:root{--paper:#f2ede1;--paper-2:#e8e1d1;--card:#fbf8ef;--ink:#15140f;--ink-soft:#514b3e;--muted:#7b7464;--line:#15140f;--line-soft:#c8bfab;--accent:#df3f1f;--accent-2:#1f5f4a;--shadow-color:#15140f;--shadow:5px 5px 0 var(--shadow-color);--serif:"Fraunces", Georgia, "Times New Roman", serif;--sans:"Zen Kaku Gothic New", "Inter", system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--topbar:69px;--max:1240px}[data-theme=dark]{--paper:#0e0e0c;--paper-2:#141410;--card:#171713;--ink:#f2ede1;--ink-soft:#c2bbaa;--muted:#8d8676;--line:#f2ede1;--line-soft:#34332c;--accent:#ff4d2a;--accent-2:#7cc7a4;--shadow-color:#f2ede1}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}body{background-color:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 10% -4%,#df3f1f17,#0000 34%),radial-gradient(circle at 92% 4%,#15140f0e,#0000 30%);margin:0;font-size:16px;line-height:1.55;overflow-x:clip}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}p{margin:0 0 .8em}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.025em;margin:0;font-weight:600;line-height:1.02}::selection{background:var(--accent);color:#fff}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip{z-index:100;background:var(--accent);color:#fff;font:600 .75rem/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;padding:10px 14px;position:absolute;top:-80px;left:16px}.skip:focus{top:12px}.kicker{font:500 .66rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:inline-block}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.topbar{z-index:40;height:var(--topbar);background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1.5px solid var(--line);align-items:center;gap:28px;padding:0 26px;display:flex;position:sticky;top:0}.brand{flex:none;align-items:center;gap:11px;display:flex}.brand-mark{background:var(--accent);color:#fff;border:1.5px solid var(--line);width:35px;height:35px;box-shadow:3px 3px 0 var(--shadow-color);font-family:var(--serif);place-items:center;padding-bottom:2px;font-size:1.15rem;line-height:1;display:grid}.brand-word{font-family:var(--serif);letter-spacing:.13em;font-size:1.18rem;font-weight:700}.brand-word small{font-family:var(--mono);letter-spacing:.3em;color:var(--muted);margin-top:2px;font-size:.52rem;font-weight:400;display:block}.topnav{align-items:center;gap:4px;display:flex}.topnav a{font:500 .68rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);padding:9px 12px;position:relative}.topnav a:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .18s;position:absolute;bottom:3px;left:12px;right:12px;transform:scaleX(0)}.topnav a:hover{color:var(--ink)}.topnav a:hover:after,.topnav a.is-active:after{transform:scaleX(1)}.topnav a.is-active{color:var(--ink)}.top-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.icon-btn{width:38px;height:38px;color:var(--ink-soft);background:0 0;border:1.5px solid #0000;place-items:center;transition:all .15s;display:inline-grid}.icon-btn:hover{border-color:var(--line);color:var(--ink);background:var(--card)}.btn{border:1.5px solid var(--line);background:var(--card);min-height:39px;color:var(--ink);font:500 .67rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;justify-content:center;align-items:center;gap:8px;padding:0 14px;transition:all .15s;display:inline-flex;box-shadow:3px 3px #0000}.btn:hover{box-shadow:3px 3px 0 var(--shadow-color);transform:translate(-1px,-1px)}.btn:active{box-shadow:none;transform:translate(1px,1px)}.btn-primary{background:var(--accent);color:#fff}.btn-ghost{background:0 0}.btn-wide{width:100%}.avatar{--s:42px;width:var(--s);height:var(--s);flex:0 0 var(--s);border:1.5px solid var(--line);font:600 calc(var(--s) * .29)/1 var(--mono);letter-spacing:.04em;-webkit-user-select:none;user-select:none;place-items:center;display:grid}.av-accent{background:var(--accent);color:#fff}.av-ink{background:var(--ink);color:var(--paper)}.av-paper{background:var(--paper-2);color:var(--ink)}.shell{max-width:var(--max);grid-template-columns:236px minmax(0,1fr) 300px;align-items:start;gap:26px;margin:0 auto;padding:0 26px;display:grid}.rail{top:calc(var(--topbar) + 22px);padding-top:26px;position:sticky}.rail-left,.rail-right{flex-direction:column;gap:16px;display:flex}.profile-card{border:1.5px solid var(--line);background:var(--card);padding:18px}.profile-top{align-items:center;gap:12px;display:flex}.profile-name{font-family:var(--serif);font-size:1.16rem;line-height:1.1}.profile-handle{font:400 .7rem/1 var(--mono);color:var(--muted)}.profile-bio{color:var(--ink-soft);margin:14px 0 16px;font-size:.82rem;line-height:1.5}.profile-stats{border-top:1px solid var(--line-soft);grid-template-columns:repeat(3,1fr);padding-top:13px;display:grid}.profile-stats .stat{flex-direction:column;gap:3px;display:flex}.profile-stats b{font-family:var(--serif);font-size:1.05rem;line-height:1}.profile-stats span{font:400 .58rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.profile-card .btn{margin-top:16px}.rail-nav{border:1.5px solid var(--line);background:var(--card)}.rail-nav a{border-bottom:1px solid var(--line-soft);font:500 .7rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);justify-content:space-between;align-items:center;padding:11px 14px;transition:all .14s;display:flex}.rail-nav a:last-child{border-bottom:0}.rail-nav a:hover{background:var(--paper-2);color:var(--ink);padding-left:18px}.rail-nav a.is-active{color:var(--accent)}.rail-nav .idx{color:var(--muted);font-size:.58rem}.rail-card{border:1.5px solid var(--line);background:var(--card);padding:15px 16px}.rail-card .card-title{font:500 .62rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.rail-card .card-title .card-title-left{align-items:center;gap:7px;display:inline-flex}.rail-card .card-title span:last-child{color:var(--accent)}.now-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.now-list li{color:var(--ink-soft);gap:9px;font-size:.78rem;line-height:1.4;display:flex}.now-list .dot{background:var(--accent);flex:0 0 6px;width:6px;height:6px;margin-top:6px}.trend-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.trend-list a{border-bottom:1px dashed var(--line-soft);justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;display:flex}.trend-list li:last-child a{border-bottom:0}.trend-list .tag-name{font:500 .76rem/1 var(--mono)}.trend-list .tag-count{font:400 .62rem/1 var(--mono);color:var(--muted)}.trend-list a:hover .tag-name{color:var(--accent)}.gh-card{align-items:flex-start;gap:11px;display:flex}.gh-card .gh-icon{border:1.5px solid var(--line);background:var(--ink);width:34px;height:34px;color:var(--paper);flex:0 0 34px;place-items:center;display:grid}.gh-card strong{font:500 .76rem/1.3 var(--mono);display:block}.gh-card small{color:var(--muted);margin-top:4px;font-size:.68rem;display:block}.gh-card .gh-meta{font:400 .62rem/1 var(--mono);color:var(--ink-soft);gap:12px;margin-top:8px;display:flex}.rail-foot{font:400 .58rem/1.6 var(--mono);color:var(--muted);padding:2px 2px 30px}.rail-foot a{text-underline-offset:3px;text-decoration:underline}.feed-col{min-width:0;padding:26px 0 70px}.feed-col.wide,.post-page.wide{grid-column:2/-1}.page-head{border-bottom:1.5px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;padding-bottom:18px;display:flex}.page-head h1{margin-top:4px;font-size:clamp(2.2rem,4.5vw,3.3rem)}.page-head .sub{color:var(--muted);max-width:42ch;margin:8px 0 0;font-size:.8rem}.page-head .search{flex:none}.search{border:1.5px solid var(--line);background:var(--card);height:42px;color:var(--muted);align-items:center;gap:8px;padding:0 12px;transition:all .15s;display:flex}.search:focus-within{box-shadow:3px 3px 0 var(--shadow-color);color:var(--ink)}.search input{width:100%;min-width:0;font:400 .78rem/1 var(--mono);background:0 0;border:0;outline:0}.search input::placeholder{color:var(--muted)}.composer-stub{border:1.5px solid var(--line);background:var(--card);align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.composer-stub .stub-input{text-align:left;color:var(--muted);background:0 0;border:0;flex:1;padding:6px 2px;font-size:.9rem}.composer-stub .stub-input:hover{color:var(--ink)}.feed-tabs{border-bottom:1.5px solid var(--line);gap:20px;margin-bottom:16px;display:flex}.feed-tabs .tab{font:500 .66rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:0 0;border:0;padding:10px 0 11px;position:relative}.feed-tabs .tab:hover,.feed-tabs .tab.is-active{color:var(--ink)}.feed-tabs .tab.is-active:after{content:"";background:var(--accent);height:3px;position:absolute;bottom:-1.5px;left:0;right:0}.feed{gap:16px;display:grid}.post{border:1.5px solid var(--line);background:var(--card);transition:transform .16s,box-shadow .16s;position:relative}.post:hover{box-shadow:6px 6px 0 var(--shadow-color);transform:translate(-2px,-2px)}.post:focus-within{box-shadow:6px 6px 0 var(--shadow-color)}.pinned{font:500 .56rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);align-items:center;gap:5px;padding:9px 18px 0;display:flex}.post-head{align-items:center;gap:11px;padding:15px 18px 0;display:flex}.post-head .who{flex-direction:column;gap:3px;min-width:0;display:flex}.post-head .name{white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;font-weight:600;line-height:1;overflow:hidden}.post-head .handle{font:400 .66rem/1 var(--mono);color:var(--muted)}.post-head .time{font:400 .62rem/1 var(--mono);color:var(--muted);margin-left:auto}.post-head .more{width:30px;height:30px;color:var(--muted)}.post-body{padding:12px 18px 14px}.post-text{color:var(--ink);font-size:.97rem;line-height:1.55}.post-text a:not(.tag){color:var(--accent);text-underline-offset:2px;text-decoration:underline}.post-title{margin:4px 0 14px;font-size:clamp(1.8rem,4vw,2.6rem)}.post--full .post-body{padding-top:18px}.post--full .post-text{font-size:1.1rem;line-height:1.65}.post--full .post-title{font-size:clamp(2rem,5vw,3.2rem)}.tags{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.tag{font:400 .68rem/1 var(--mono);color:var(--muted)}.tag:hover{color:var(--accent)}.post-media{border-top:1.5px solid var(--line);border-bottom:1.5px solid var(--line);margin:14px -18px 0}.post-media img{aspect-ratio:4/3;object-fit:cover;width:100%}.post-media video{background:#000;width:100%;max-height:76vh;display:block}.post-media--video{background:#000}.post-media figcaption{font:400 .6rem/1.4 var(--mono);color:var(--muted);background:var(--paper-2);padding:8px 18px}.post-actions{border-top:1px dashed var(--line-soft);display:flex}.act{border:0;border-right:1px dashed var(--line-soft);min-height:41px;color:var(--muted);font:400 .64rem/1 var(--mono);background:0 0;flex:1;justify-content:center;align-items:center;gap:6px;transition:all .14s;display:flex}.act:last-child{border-right:0}.act:hover{color:var(--ink);background:var(--paper-2)}.act.is-liked{color:var(--accent)}.act.is-liked svg{fill:currentColor}.act.is-saved{color:var(--accent-2)}.act.is-saved svg{fill:currentColor}.act:focus-visible{outline-offset:-3px}.link-card{border:1.5px solid var(--line);background:var(--paper-2);align-items:stretch;gap:14px;margin-top:13px;padding:13px;transition:all .15s;display:flex}.link-card:hover{background:var(--card);box-shadow:3px 3px 0 var(--shadow-color);transform:translate(-1px,-1px)}.link-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.link-domain{font:400 .58rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.link-copy strong{font-family:var(--serif);letter-spacing:-.01em;font-size:1.05rem;line-height:1.15}.link-desc{color:var(--ink-soft);font-size:.75rem;line-height:1.4}.link-arrow{color:var(--accent);flex:none;align-self:center;margin-left:auto}.code-block{color:#efe9da;border:1.5px solid var(--line);font:400 .73rem/1.6 var(--mono);tab-size:2;background:#15140f;margin:14px 0 0;padding:15px 16px;overflow-x:auto}[data-theme=dark] .code-block{border-color:var(--line-soft);background:#060605}.code-block code{font:inherit}.poll{gap:7px;margin-top:14px;display:grid}.poll-opt{border:1.5px solid var(--line);background:var(--paper-2);text-align:left;font:400 .78rem/1.2 var(--sans);align-items:center;gap:10px;padding:9px 12px;display:flex;position:relative;overflow:hidden}.poll-opt:hover{background:var(--card)}.poll-fill{background:color-mix(in srgb, var(--accent) 16%, transparent);width:0;transition:width .5s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0 auto 0 0}.poll.voted .poll-fill{width:var(--p)}.poll-label{z-index:1;position:relative}.poll-pct{z-index:1;font:500 .68rem/1 var(--mono);color:var(--accent);opacity:0;margin-left:auto;transition:opacity .2s;position:relative}.poll.voted .poll-pct{opacity:1}.poll-opt.is-chosen{border-color:var(--accent)}.poll-opt.is-chosen:after{content:"✓";z-index:1;color:var(--accent);font-size:.8rem;position:relative}.poll-meta{font:400 .6rem/1 var(--mono);color:var(--muted);margin-top:2px}.quote{font-family:var(--serif);letter-spacing:-.03em;border:0;margin:6px 0 0;padding:20px 0 6px;font-size:clamp(1.5rem,3.6vw,2.2rem);line-height:1.15}.quote:before{content:"“";color:var(--accent);margin-bottom:8px;font-size:3.2rem;line-height:.6;display:block}.quote p{margin:0}.quote cite{font:400 .62rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:12px;display:block}.load-more{border:1.5px dashed var(--line);width:100%;color:var(--ink-soft);font:500 .66rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;background:0 0;margin-top:16px;padding:14px}.load-more:hover{background:var(--card);color:var(--ink);border-style:solid}.archive-head{border-bottom:1.5px solid var(--line);padding:26px 0 18px}.archive-head h1{font-size:clamp(2.6rem,6vw,4.6rem)}.archive-head .row{justify-content:space-between;align-items:flex-end;gap:20px;margin-top:6px;display:flex}.archive-head .sub{color:var(--muted);max-width:48ch;margin:8px 0 0;font-size:.82rem}.archive-head .count{font:400 .66rem/1 var(--mono);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.chips{flex-wrap:wrap;gap:8px;margin:16px 0 20px;display:flex}.chip{border:1.5px solid var(--line);font:500 .62rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);background:0 0;padding:8px 12px}.chip:hover{background:var(--card);color:var(--ink)}.chip.is-active{background:var(--ink);color:var(--paper)}.masonry{columns:3;column-gap:16px;padding-bottom:70px}.masonry .post{break-inside:avoid;margin:0 0 16px}.masonry .post:hover{box-shadow:4px 4px 0 var(--shadow-color);transform:translate(-1px,-1px)}.masonry .post-text{font-size:.88rem}.masonry .post-media img{aspect-ratio:auto}.masonry .post-actions .act:nth-child(4),.masonry .post-actions .act:nth-child(5){display:none}.empty{text-align:center;border:1.5px dashed var(--line);color:var(--muted);padding:50px 20px}.empty strong{font-family:var(--serif);color:var(--ink);margin-bottom:6px;font-size:1.4rem;display:block}.post-page{min-width:0;padding:26px 0 80px}.post-page .post:hover{box-shadow:none;transform:none}.post-page .post-head .time{font-size:.62rem}.comments-block{margin-top:30px}.section-head{border-bottom:1.5px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;padding-bottom:10px;display:flex}.section-head .count{font:400 .62rem/1 var(--mono);color:var(--muted)}.comment-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.comment-head .handle,.comment-head .time{font:400 .62rem/1 var(--mono);color:var(--muted)}.comment p{margin:6px 0 7px;font-size:.86rem;line-height:1.5}.comment-like{font:400 .62rem/1 var(--mono);color:var(--muted);background:0 0;border:0;align-items:center;gap:5px;padding:0;display:inline-flex}.comment-like:hover,.comment-like.is-liked{color:var(--accent)}.comment-like.is-liked svg{fill:currentColor}.comment-form{align-items:flex-start;gap:11px;margin:18px 0 0;display:flex}.comment-form .field{flex:1}.comment-form textarea{resize:vertical;border:1.5px solid var(--line);background:var(--card);width:100%;min-height:72px;padding:11px 12px;font-size:.86rem;line-height:1.45}.comment-form .btn{margin-top:8px}.related{margin-top:34px}.related-grid .post{margin:0}.related-grid .post-text{font-size:.8rem}.related-grid .post-actions{display:none}.related-grid .post-media img{aspect-ratio:4/3}.about-page{padding-bottom:80px}.about-hero{border-bottom:1.5px solid var(--line);grid-template-columns:minmax(0,1fr) 170px;align-items:end;gap:30px;padding:46px 0 34px;display:grid}.about-hero h1{letter-spacing:-.045em;font-size:clamp(2.8rem,7vw,6.4rem)}.about-hero h1 em{color:var(--accent);font-style:italic}.about-hero .lede{max-width:54ch;color:var(--ink-soft);margin:20px 0 0;font-size:.95rem}.about-hero .meta-row{font:400 .64rem/1 var(--mono);color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:22px;display:flex}.about-hero .meta-row b{color:var(--ink);font-weight:500}.vertical{writing-mode:vertical-rl;font-family:var(--serif);letter-spacing:.18em;color:var(--accent);justify-self:end;padding-bottom:4px;font-size:2.6rem;line-height:1}.vertical small{font-family:var(--mono);letter-spacing:.4em;color:var(--muted);font-size:.55rem}.stat-grid{border-left:1.5px solid var(--line);border-top:1.5px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:26px;display:grid}.stat-grid .cell{border-right:1.5px solid var(--line);border-bottom:1.5px solid var(--line);background:var(--card);padding:18px}.stat-grid b{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.3rem);line-height:1;display:block}.stat-grid span{font:400 .58rem/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:7px;display:block}.visitor-counter{flex-wrap:wrap;gap:14px;margin-top:16px;display:flex}.visitor-counter .v-cell{border:1.5px solid var(--line);background:var(--card);min-width:150px;padding:16px 20px}.visitor-counter b{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.6rem);line-height:1;display:block}.visitor-counter span{font:400 .58rem/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:6px;display:block}.about-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:26px;margin-top:30px;display:grid}.panel{border:1.5px solid var(--line);background:var(--card);padding:22px}.panel h2{margin-bottom:14px;font-size:1.45rem}.panel p{color:var(--ink-soft);font-size:.86rem}.panel .kicker{margin-bottom:8px}.heatmap-wrap{padding-bottom:4px;overflow-x:auto}.heatmap{grid-template-rows:repeat(7,11px);grid-auto-columns:11px;grid-auto-flow:column;gap:3px;min-width:max-content;display:grid}.hm-cell{background:var(--paper-2);border:1px solid color-mix(in srgb, var(--line) 18%, transparent);width:11px;height:11px}.hm-cell.l1{background:color-mix(in srgb, var(--accent-2) 28%, var(--paper-2))}.hm-cell.l2{background:color-mix(in srgb, var(--accent-2) 50%, var(--paper-2))}.hm-cell.l3{background:color-mix(in srgb, var(--accent-2) 74%, var(--paper-2))}.hm-cell.l4{background:var(--accent-2)}.heatmap-legend{font:400 .58rem/1 var(--mono);color:var(--muted);align-items:center;gap:6px;margin-top:12px;display:flex}.heatmap-legend .hm-cell{width:10px;height:10px}.gh-stat{font:400 .68rem/1 var(--mono);color:var(--muted);align-items:baseline;gap:8px;margin-top:14px;display:flex}.gh-stat b{font-family:var(--serif);color:var(--ink);font-size:1.5rem}.project-list{margin:0;padding:0;list-style:none}.project-list li{border-bottom:1px dashed var(--line-soft)}.project-list li:last-child{border-bottom:0}.project-list a{align-items:center;gap:12px;padding:13px 0;display:flex}.project-list .p-idx{font:400 .6rem/1 var(--mono);color:var(--accent)}.project-list .p-name{font-family:var(--serif);font-size:1.08rem}.project-list .p-desc{color:var(--muted);margin-top:3px;font-size:.68rem;display:block}.project-list .p-arrow{color:var(--muted);margin-left:auto}.project-list a:hover .p-name{color:var(--accent)}.project-list a:hover .p-arrow{color:var(--accent);transform:translate(3px)}.project-list .p-arrow{transition:all .15s}.timeline{border-left:1.5px solid var(--line);margin:0;padding:0 0 0 20px;list-style:none}.timeline li{color:var(--ink-soft);padding:0 0 18px 14px;font-size:.8rem;position:relative}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:"";background:var(--paper);border:1.5px solid var(--line);width:9px;height:9px;position:absolute;top:5px;left:-26px}.timeline li.is-now:before{background:var(--accent);border-color:var(--accent)}.timeline b{font:500 .6rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;display:block}.auth-page{min-height:calc(100vh - var(--topbar));grid-template-columns:1fr 1fr;display:grid}.auth-art{color:#f2ede1;border-right:1.5px solid var(--line);background:#15140f;flex-direction:column;justify-content:space-between;padding:46px;display:flex;position:relative;overflow:hidden}.auth-art:after{content:"";pointer-events:none;background-image:radial-gradient(circle at 70% 20%,#df3f1f80,#0000 38%),radial-gradient(circle at 20% 90%,#df3f1f2e,#0000 30%);position:absolute;inset:0}.auth-art .kicker{color:#ff6a49}.auth-art .big-jp{font-family:var(--serif);letter-spacing:.02em;color:#f2ede1;z-index:1;font-size:clamp(5rem,13vw,11rem);line-height:.8;position:relative}.auth-art .big-jp span{color:#df3f1f}.auth-art .art-copy{z-index:1;max-width:36ch;position:relative}.auth-art .art-copy p{color:#c9c1b1;font-size:.85rem}.auth-art .art-meta{z-index:1;font:400 .58rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#8d8676;gap:20px;display:flex;position:relative}.auth-form-wrap{justify-content:center;align-items:center;padding:46px 26px;display:flex}.auth-form{width:min(100%,410px)}.auth-form h1{margin:6px 0 10px;font-size:clamp(2rem,4vw,2.9rem)}.auth-form .sub{color:var(--muted);margin-bottom:24px;font-size:.82rem}.auth-tabs{border-bottom:1.5px solid var(--line);gap:18px;margin-bottom:22px;display:flex}.auth-tabs button{font:500 .64rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);background:0 0;border:0;padding:0 0 10px;position:relative}.auth-tabs button.is-active{color:var(--ink)}.auth-tabs button.is-active:after{content:"";background:var(--accent);height:3px;position:absolute;bottom:-1.5px;left:0;right:0}.field{margin-bottom:16px}.field label{font:500 .58rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;display:block}.field input{border:1.5px solid var(--line);background:var(--card);width:100%;height:46px;padding:0 12px;font-size:.86rem}.field input:focus{box-shadow:3px 3px 0 var(--shadow-color);outline:0}.auth-form .btn{width:100%;margin-top:6px}.divider{font:400 .58rem/1 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.14em;align-items:center;gap:12px;margin:20px 0;display:flex}.divider:before,.divider:after{content:"";background:var(--line-soft);flex:1;height:1px}.auth-fine{color:var(--muted);margin-top:18px;font-size:.66rem;line-height:1.6}.auth-fine a{text-underline-offset:3px;text-decoration:underline}dialog{border:1.5px solid var(--line);background:var(--card);color:var(--ink);width:min(640px,100vw - 28px);max-height:90vh;box-shadow:10px 10px 0 var(--shadow-color);padding:0;overflow:auto}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0b088c}.composer-head{justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 22px 0;display:flex}.composer-head h2{margin-top:4px;font-size:1.7rem}.composer-body{gap:13px;padding:18px 22px;display:flex}.composer-body textarea{resize:vertical;background:0 0;border:0;outline:0;flex:1;min-height:150px;font-size:1.08rem;line-height:1.55}.composer-body textarea::placeholder{color:var(--muted)}.composer-tools{border-top:1px dashed var(--line-soft);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 22px;display:flex}.tool{font:400 .6rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;padding:7px 8px;display:inline-flex}.tool:hover{background:var(--paper-2);color:var(--accent)}.counter{font:400 .62rem/1 var(--mono);color:var(--muted);margin-left:auto}.counter b{color:var(--ink);font-weight:500}.composer-foot{border-top:1.5px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:14px 22px 18px;display:flex}.composer-note{font:400 .58rem/1 var(--mono);color:var(--muted);align-items:center;gap:6px;display:inline-flex}.composer-note svg{color:var(--accent-2)}#composer-publish:disabled{opacity:.35;cursor:not-allowed;box-shadow:none;transform:none}.mobile-nav{display:none}.mobile-compose{border:1.5px solid var(--line);background:var(--accent);color:#fff;width:48px;height:48px;box-shadow:3px 3px 0 var(--shadow-color);place-items:center;margin-top:-20px;display:grid;transform:rotate(45deg)}.mobile-compose svg{transform:rotate(-45deg)}#toast{z-index:80;background:var(--ink);max-width:min(520px,100vw - 28px);color:var(--paper);border:1.5px solid var(--line);box-shadow:4px 4px 0 var(--accent);font:400 .7rem/1.4 var(--mono);opacity:0;pointer-events:none;padding:12px 16px;transition:all .2s;position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px)}#toast.is-on{opacity:1;transform:translate(-50%)}@media (max-width:1120px){.shell{grid-template-columns:220px minmax(0,1fr)}.rail-right{display:none}.masonry{columns:2}}@media (max-width:880px){:root{--topbar:61px}.topbar{flex-wrap:wrap;gap:8px 10px;height:auto;min-height:61px;padding:8px 16px}.topnav,.brand-word small{display:none}.shell{padding:0 16px;display:block}.rail-left{display:none}.feed-col{padding-top:20px;padding-bottom:100px}.page-head{flex-direction:column;align-items:flex-start;gap:14px}.page-head .search{width:100%}.shell>*,.feed>*{min-width:0}.masonry{columns:2;padding-bottom:100px}.related-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.about-hero{grid-template-columns:1fr}.vertical{display:none}.auth-page{grid-template-columns:1fr}.auth-art{display:none}.post-page{padding-bottom:100px}.archive-head{padding-top:20px}.mobile-nav{z-index:50;padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1.5px solid var(--line);grid-template-columns:repeat(5,1fr);align-items:end;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav a{font:500 .52rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-direction:column;align-items:center;gap:4px;padding:6px 2px;display:flex}.mobile-nav a.is-active{color:var(--accent)}.mobile-nav a svg{opacity:.9}#toast{bottom:86px}}@media (max-width:620px){.masonry{columns:1}.related-grid{grid-template-columns:1fr}.post{width:100%}.post-head{padding:13px 14px 0}.post-body{padding:11px 14px 13px}.post-media{margin-left:-14px;margin-right:-14px}.post-media figcaption{padding-left:14px;padding-right:14px}.post-title{font-size:1.8rem}.post--full .post-title{font-size:2rem}.page-head h1{font-size:2.3rem}.archive-head h1{font-size:2.7rem}.archive-head .row{flex-direction:column;align-items:flex-start;gap:8px}.about-hero h1{font-size:2.9rem}.stat-grid{grid-template-columns:1fr 1fr}.panel{padding:16px}.composer-head,.composer-body,.composer-tools,.composer-foot{padding-left:15px;padding-right:15px}.composer-body{flex-direction:column}.composer-note{display:none}.act{font-size:.58rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mt{margin-top:22px}.sub{color:var(--muted);font-size:.84rem;line-height:1.6}.field textarea,.field select,.admin-inline-form input,.admin-inline-form select{border:1.5px solid var(--line);background:var(--card);width:100%;font:inherit;color:var(--ink);border-radius:0;padding:11px 12px;font-size:.86rem}.field textarea{resize:vertical;min-height:90px;line-height:1.55}.field textarea.mono{font-family:var(--mono);font-size:.78rem}.field textarea:focus,.field select:focus,.admin-inline-form input:focus,.admin-inline-form select:focus{box-shadow:3px 3px 0 var(--shadow-color);outline:0}.field-hint{font:400 .58rem/1.5 var(--mono);letter-spacing:.04em;color:var(--muted);margin-top:6px;display:block}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.fieldset{border:1.5px dashed var(--line-soft);margin:0 0 18px;padding:16px}.fieldset legend{font:500 .58rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);padding:0 8px}.upload-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:9px;display:flex}.upload-input{border:1.5px dashed var(--line-soft);background:var(--card);min-width:0;height:auto;font:400 .7rem/1.4 var(--mono);cursor:pointer;flex:220px;padding:9px 12px}.upload-input::file-selector-button{border:1.5px solid var(--line);background:var(--paper-2);color:var(--ink);font:500 .58rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;margin-right:10px;padding:6px 12px}.upload-input:hover{border-color:var(--line)}.upload-input:disabled{opacity:.55;cursor:progress}.upload-clear{padding:7px 12px;font-size:.56rem}.upload-progress{margin-top:9px}.upload-bar{border:1.5px solid var(--line);background:var(--paper-2);height:8px;overflow:hidden}.upload-bar span{background:var(--accent);height:100%;transition:width .2s linear;display:block}.upload-cancel{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;margin-left:8px;padding:0;text-decoration:underline}.check-row{color:var(--ink-soft);align-items:flex-start;gap:10px;margin:0 0 16px;font-size:.78rem;line-height:1.45;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin-top:1px}.form-msg{border:1.5px solid var(--line);font:400 .68rem/1.55 var(--mono);letter-spacing:.02em;margin:12px 0 0;padding:10px 12px;display:block}.form-msg.is-error{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.form-msg.is-ok{border-color:var(--accent-2);color:var(--accent-2);background:color-mix(in srgb, var(--accent-2) 7%, transparent)}.form-msg a{text-underline-offset:3px;text-decoration:underline}.admin-table .form-msg{margin:6px 0 0;padding:4px 6px;font-size:.55rem}.composer-form{max-width:760px}.composer-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:20px;display:flex}.composer-note{font:400 .58rem/1.5 var(--mono);color:var(--muted);letter-spacing:.04em}.subscribe-form{grid-template-columns:1fr auto;gap:8px;display:grid}.subscribe-form input,.subscribe-form select{border:1.5px solid var(--line);background:var(--card);height:40px;color:var(--ink);min-width:0;padding:0 10px;font-size:.78rem}.subscribe-form select{grid-column:1}.subscribe-form .btn{grid-area:1/2;height:40px;padding:0 14px}.subscribe-form .form-msg{grid-column:1/-1}.subscribe-form.is-compact{grid-template-columns:1fr}.subscribe-form.is-compact select,.subscribe-form.is-compact .btn{grid-area:auto/1}.rail-card .subscribe-form input,.rail-card .subscribe-form select{height:36px;font-size:.72rem}.pager{font:500 .6rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;margin:24px 0 0;display:flex}.pager a{text-underline-offset:4px;text-decoration:underline}.search-note{font:400 .68rem/1.6 var(--mono);color:var(--muted);letter-spacing:.02em;margin:0 0 16px}.search-note a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.post-page{min-width:0}.back-link{font:500 .6rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:center;gap:7px;margin-bottom:16px;display:inline-flex}.back-link svg{transform:rotate(180deg)}.back-link:hover{color:var(--accent)}.section-head{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:16px;display:flex}.section-head h2{font-size:1.5rem}.section-head .count{font:500 .58rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.comments-block{border-top:1.5px solid var(--line);margin-top:34px;padding-top:26px}.comment{border-bottom:1px dashed var(--line-soft);gap:12px;padding:14px 0;display:flex}.comment-main{flex:1;min-width:0}.comment-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.comment-head .name{font-size:.86rem;font-weight:600}.comment-head .handle{font:400 .6rem/1 var(--mono);color:var(--muted)}.comment-head .time{font:400 .58rem/1 var(--mono);color:var(--muted);margin-left:auto}.comment-text{color:var(--ink-soft);white-space:pre-wrap;margin:0;font-size:.84rem;line-height:1.6}.comment-delete{margin-top:6px}.comment-delete button{font:500 .55rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0}.comment-delete button:hover{color:var(--accent)}.comment-form{align-items:flex-start;gap:12px;margin-top:18px;display:flex}.comment-form .field{flex:1;margin:0}.comment-form textarea{border:1.5px solid var(--line);background:var(--card);width:100%;min-height:74px;font:inherit;color:var(--ink);resize:vertical;padding:10px 12px;font-size:.84rem}.comment-form textarea:focus{box-shadow:3px 3px 0 var(--shadow-color);outline:0}.comment-signin{color:var(--muted);margin-top:14px;font-size:.8rem}.comment-reactions{margin-top:8px}.comment-reaction-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.reaction-btn{border:1.5px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;align-items:center;gap:5px;padding:4px 7px;display:inline-flex}.reaction-btn:hover{color:var(--accent);border-color:var(--accent)}.reaction-btn.is-mine{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--card))}.reaction-count{font:500 .6rem/1 var(--mono)}.reaction-hint{font:400 .55rem/1.5 var(--mono);letter-spacing:.04em;color:var(--muted);margin:5px 0 0}.comment-signin a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.related{border-top:1.5px solid var(--line);margin-top:34px;padding-top:26px}.related-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.member-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.member-card{border:1.5px solid var(--line);background:var(--card);align-items:flex-start;gap:14px;padding:18px;display:flex}.member-main{flex:1;min-width:0}.member-name{font-size:.95rem;font-weight:600;display:block}.member-main .handle{font:400 .58rem/1.6 var(--mono);color:var(--muted);letter-spacing:.04em;display:block}.member-main p{color:var(--ink-soft);margin:8px 0;font-size:.74rem;line-height:1.55}.member-meta{font:500 .55rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);gap:12px;display:flex}.member-card .btn{padding:7px 10px;font-size:.55rem}.profile-hero{border:1.5px solid var(--line);background:var(--card);flex-wrap:wrap;align-items:flex-start;gap:22px;margin-bottom:26px;padding:26px;display:flex}.profile-hero-main{flex:1;min-width:220px}.profile-hero-main h1{margin:4px 0 2px;font-size:clamp(2rem,4vw,2.8rem)}.profile-bio-lg{color:var(--ink-soft);max-width:54ch;margin:12px 0;font-size:.9rem;line-height:1.6}.profile-hero-actions{flex-wrap:wrap;gap:8px;display:flex}.profile-hero .meta-row{margin-top:10px}.admin-shell{background:var(--paper);grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.admin-side{border-right:1.5px solid var(--line);background:var(--card);flex-direction:column;align-self:start;gap:22px;height:100vh;padding:22px 18px;display:flex;position:sticky;top:0}.admin-brand{font:600 .8rem/1 var(--mono);letter-spacing:.14em;align-items:center;gap:10px;display:flex}.admin-brand small{font:400 .52rem/1 var(--mono);letter-spacing:.18em;color:var(--muted);margin-top:4px;display:block}.admin-nav{flex-direction:column;gap:2px;display:flex}.admin-nav a{font:500 .68rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1.5px solid #0000;align-items:center;gap:10px;padding:9px 10px;display:flex}.admin-nav a:hover{color:var(--ink);background:var(--paper)}.admin-nav a.is-active{color:var(--accent);border-color:var(--line);background:var(--paper)}.admin-user{border-top:1px dashed var(--line-soft);align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:flex}.admin-user strong{font-size:.78rem;display:block}.admin-user small{font:400 .55rem/1.4 var(--mono);color:var(--muted);display:block}.admin-side-actions{gap:6px;display:grid}.admin-side-actions .btn{padding:9px;font-size:.58rem}.admin-main{min-width:0;padding:30px clamp(18px,4vw,46px) 60px}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:26px;display:flex}.admin-head h1{margin:2px 0 4px;font-size:clamp(2rem,4vw,2.7rem)}.admin-head-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:22px;display:grid}.admin-stat{border:1.5px solid var(--line);background:var(--card);flex-direction:column;padding:16px;display:flex}.admin-stat-ico{color:var(--accent);margin-bottom:8px;display:inline-flex}.admin-stat b{font-family:var(--serif,Georgia, serif);letter-spacing:-.02em;font-size:1.9rem;line-height:1;display:block}.admin-stat span{font:500 .55rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:6px;display:block}.admin-stat:hover{box-shadow:3px 3px 0 var(--shadow-color);transform:translate(-1px,-1px)}.admin-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.admin-list{flex-direction:column;list-style:none;display:flex}.admin-list li{border-top:1px dashed var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.admin-list li:first-child{border-top:0}.admin-list-title{font-size:.84rem;font-weight:600;display:block}.admin-list li small{font:400 .55rem/1.4 var(--mono);color:var(--muted);margin-top:3px;display:block}.admin-quick{gap:4px;display:grid}.admin-quick a{font:500 .64rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);border:1.5px solid #0000;align-items:center;gap:10px;padding:10px;display:flex}.admin-quick a:hover{border-color:var(--line);background:var(--paper);color:var(--ink)}.admin-rule{border:0;border-top:1px dashed var(--line-soft);margin:18px 0}.admin-note p{margin:4px 0;font-size:.74rem}.admin-note .btn{margin-top:10px}.admin-table-wrap{border:1.5px solid var(--line);background:var(--card);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.78rem}.admin-table th{text-align:left;border-bottom:1.5px solid var(--line);font:500 .55rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding:10px 12px}.admin-table td{border-bottom:1px dashed var(--line-soft);vertical-align:middle;padding:11px 12px}.admin-table tr:last-child td{border-bottom:0}.admin-table td small{font:400 .55rem/1.4 var(--mono);margin-top:3px;display:block}.pill{border:1.5px solid var(--line);font:500 .52rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;display:inline-block}.pill.is-live{color:var(--accent-2);border-color:var(--accent-2)}.pill.is-draft{color:var(--muted);border-color:var(--line-soft)}.admin-row-actions{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.mini-btn{border:1.5px solid var(--line);background:var(--card);font:500 .52rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;padding:5px 8px;display:inline-block}.mini-btn:hover{color:var(--ink);background:var(--paper)}.mini-btn.is-danger{color:var(--accent);border-color:var(--accent)}.mini-btn.is-danger:hover{background:var(--accent);color:#fff}.admin-member{align-items:center;gap:10px;display:flex}.admin-inline-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.admin-inline-form select{width:auto;padding:6px 8px;font-size:.62rem}.admin-inline-form input{width:auto;padding:8px 10px;font-size:.72rem}.admin-table .admin-inline-form{flex-wrap:nowrap}.admin-comments{flex-direction:column;gap:10px;display:flex}.admin-comment{border:1.5px solid var(--line);background:var(--card);align-items:flex-start;gap:12px;padding:14px;display:flex}.admin-comment.is-hidden{opacity:.6;border-style:dashed}.admin-comment-main{flex:1;min-width:0}.admin-comment-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.admin-comment-head span{font:400 .55rem/1 var(--mono)}.admin-comment p{margin:6px 0}.admin-comment .admin-row-actions{flex-direction:column}@media (max-width:980px){.admin-shell{grid-template-columns:1fr}.admin-side{border-right:0;border-bottom:1.5px solid var(--line);flex-flow:wrap;align-items:center;height:auto;position:static}.admin-nav{flex-flow:wrap}.admin-user{border-top:0;margin-top:0;padding-top:0}.admin-side-actions{display:flex}.admin-grid{grid-template-columns:1fr}}@media (max-width:700px){.form-row{grid-template-columns:1fr}.admin-side{gap:12px;padding:14px}.admin-nav a{padding:7px 8px;font-size:.58rem}.admin-nav a svg,.admin-user{display:none}.admin-main{padding:22px 14px 50px}.profile-hero{padding:18px}.member-grid{grid-template-columns:1fr}.comment-form{flex-direction:column}.admin-comment{flex-wrap:wrap}.admin-comment .admin-row-actions{flex-direction:row}}
