.writing-index{padding-bottom:clamp(4rem,9vw,8rem)}.writing-article__type{margin-bottom:var(--space-4);color:var(--brand-strong);font-family:var(--font-body);font-size:var(--text-sm);font-weight:700}.writing-article__head h1{font-family:var(--font-display);letter-spacing:var(--tracking-display);text-wrap:balance;font-weight:800;line-height:1.02}.writing-index__hero{background:var(--bg);color:var(--ink)}.writing-index__hero>.container{padding-block:clamp(1.25rem,2.5vw,2rem) clamp(1.75rem,3.5vw,2.75rem)}.writing-index__panel{border-radius:var(--radius-xl);background:var(--brand-soft);grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);align-items:center;gap:clamp(1.75rem,4vw,3.5rem);padding:clamp(1.5rem,3vw,2.5rem);display:grid}.writing-index__copy>p:first-child{color:var(--brand-strong);font-size:var(--text-sm);font-weight:750}.writing-index__copy h1{max-width:19ch;margin-top:var(--space-3);font-family:var(--font-display);letter-spacing:var(--tracking-display);text-wrap:balance;font-size:clamp(1.9rem,1.35rem + 1.85vw,2.9rem);font-weight:800;line-height:1.04}.writing-index__copy>p:last-child{max-width:50ch;margin-top:var(--space-4);font-size:var(--text-base);text-wrap:pretty;font-weight:550;line-height:1.55}.writing-index__exchange{gap:var(--space-3);flex-direction:column;display:flex}.writing-index__exchange p{padding:var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5}.writing-index__exchange p:first-child{background:var(--surface);width:86%;font-family:var(--font-display);font-size:var(--text-base);margin-left:auto;font-weight:700}.writing-index__exchange p:last-child{margin-right:var(--space-4);background:var(--trust-soft);color:var(--ink-2)}.writing-list{padding-top:clamp(1.75rem,3vw,2.75rem)}.writing-list ol{border-top:1px solid var(--line-strong)}.writing-list li{border-bottom:1px solid var(--line-strong)}.writing-list__link{color:inherit;transition:color var(--dur-2) var(--ease-out), padding-inline var(--dur-2) var(--ease-out);grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);column-gap:clamp(1.75rem,4vw,4rem);padding-block:clamp(1.25rem,2.2vw,1.85rem);text-decoration:none;display:grid}.writing-list__link:hover{color:var(--brand-strong);padding-inline:var(--space-3)}.writing-list__meta{align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--muted);font-size:var(--text-sm);grid-column:1/-1;display:flex}.writing-list__meta span{color:var(--trust-strong);font-weight:700}.writing-list__meta time:before{content:"·";margin-right:var(--space-3)}.writing-list__title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:var(--tracking-tight);text-wrap:balance;align-self:start;font-weight:750;line-height:1.2}.writing-list__answer{color:var(--ink-2);font-size:var(--text-sm);text-wrap:pretty;line-height:1.6}.writing-list__read{margin-top:var(--space-4);color:var(--brand-strong);font-size:var(--text-sm);grid-column:2;font-weight:700}.writing-list__read span{transition:transform var(--dur-2) var(--ease-out);display:inline-block}.writing-list__link:hover .writing-list__read span{transform:translate(.25rem)}.writing-list__empty{padding-block:var(--space-8);border-block:1px solid var(--line-strong);color:var(--ink-2)}.writing-article{padding-top:clamp(1.75rem,3.5vw,3rem);padding-bottom:clamp(3rem,6vw,5.5rem)}.writing-article__body--with-toc{grid-template-columns:minmax(0,1fr) 15rem;align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.writing-toc{padding-top:clamp(1.5rem,3vw,2.5rem);position:sticky;top:5.5rem}.writing-toc h2{margin-bottom:var(--space-3);color:var(--muted);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.writing-toc ul{border-left:1px solid var(--line-strong)}.writing-toc li[data-level="3"]{padding-left:var(--space-3)}.writing-toc a{padding:.3rem 0 .3rem var(--space-4);color:var(--ink-2);font-size:var(--text-sm);text-wrap:pretty;transition:color var(--dur-2) var(--ease-out);border-left:1px solid #0000;margin-left:-1px;line-height:1.4;text-decoration:none;display:block}.writing-toc a:hover{border-left-color:var(--brand);color:var(--brand-strong)}.writing-article__head{border-bottom:1px solid var(--line-strong);max-width:760px;padding-bottom:clamp(1.5rem,3vw,2.5rem)}.writing-article__back{color:var(--ink-2);font-size:var(--text-sm);margin-bottom:clamp(1.25rem,3vw,2.25rem);font-weight:650;text-decoration:none;display:inline-block}.writing-article__back:hover{color:var(--brand-strong)}.writing-article__head h1{max-width:22ch;font-size:clamp(1.9rem,1.35rem + 1.85vw,2.9rem)}.writing-article__byline{gap:var(--space-2);margin-top:var(--space-5);color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.writing-article__byline a{color:var(--ink-2);font-weight:650}.writing-article__prose{max-width:70ch;color:var(--ink-2);text-wrap:pretty;padding-top:clamp(1.5rem,3vw,2.5rem);font-size:1rem;line-height:1.7}.writing-article__prose>*+*{margin-top:var(--space-4)}.writing-article__prose .writing-article__answer{margin-bottom:var(--space-6);color:var(--ink);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:var(--tracking-tight);font-weight:600;line-height:1.5}.writing-article__prose h2,.writing-article__prose h3{color:var(--ink);font-family:var(--font-display);letter-spacing:var(--tracking-tight);text-wrap:balance;font-weight:750;line-height:1.2}.writing-article__prose h2{margin-top:var(--space-8);font-size:var(--text-xl);scroll-margin-top:5rem}.writing-article__prose h3{margin-top:var(--space-6);font-size:var(--text-lg)}.writing-article__prose h2+*,.writing-article__prose h3+*{margin-top:var(--space-3)}.writing-article__prose a{color:var(--brand-strong);text-underline-offset:.18em;font-weight:650;text-decoration-thickness:.08em}.writing-article__prose strong{color:var(--ink);font-weight:700}.writing-article__prose ul,.writing-article__prose ol{padding-left:1.35rem}.writing-article__prose ul{list-style:outside}.writing-article__prose ol{list-style:decimal}.writing-article__prose li+li{margin-top:var(--space-2)}.writing-article__prose li::marker{color:var(--brand-strong)}.writing-article__prose blockquote{margin-block:var(--space-6);padding:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--trust-soft);color:var(--ink)}.writing-article__prose code{border-radius:var(--radius-sm);background:var(--code-bg);color:var(--code-ink);font-family:var(--font-mono);padding:.1em .35em;font-size:.86em}.writing-article__prose pre{margin-block:var(--space-6);padding:var(--space-5);border-radius:var(--radius-md);background:var(--code-bg);color:var(--code-ink);overflow-x:auto}.writing-article__prose pre code{white-space:pre;background:0 0;padding:0}.writing-article__prose img,.writing-article__prose video{max-width:100%;height:auto;margin-block:var(--space-8);border-radius:var(--radius-md);display:block}.writing-article__prose table{width:100%;margin-block:var(--space-6);border-collapse:collapse;font-size:var(--text-sm)}.writing-article__prose th,.writing-article__prose td{padding:var(--space-3);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.writing-article__prose th{color:var(--ink)}.writing-related{max-width:72ch;margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--line-strong)}.writing-related h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:750}.writing-related ul{margin-top:var(--space-4)}.writing-related li+li{margin-top:var(--space-3)}.writing-related a{gap:var(--space-3);color:var(--ink);font-weight:650;text-decoration:none;display:flex}.writing-related a:hover{color:var(--brand-strong)}.writing-related a span{color:var(--trust-strong);font-size:var(--text-sm);flex:none}@media (max-width:900px){.writing-article__body--with-toc{grid-template-columns:1fr}.writing-toc{display:none}}@media (max-width:720px){.writing-index__panel{grid-template-columns:1fr}.writing-index__exchange{max-width:34rem}.writing-index__exchange p:first-child{width:92%}.writing-list__link{grid-template-columns:1fr}.writing-list__answer,.writing-list__read{grid-column:1}.writing-list__answer{margin-top:var(--space-3)}.writing-related a{gap:var(--space-1);flex-direction:column}}@media (prefers-reduced-motion:reduce){.writing-list__link,.writing-list__read span{transition:none}}
