.writing-switch{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 32px}.writing-switch a{padding:10px 20px;border:1px solid #c8d0c6;border-radius:100px}.writing-switch a[aria-current=page]{background:#193e32;color:#fff}.writing-filters{display:flex;gap:20px;flex-wrap:wrap;align-items:end;margin-bottom:28px}.writing-filters label{display:grid;gap:8px;font-size:13px}.writing-filters label:first-child{flex:1;min-width:200px}.writing-filters input,.writing-filters select{font:inherit;font-size:15px;color:inherit;padding:14px;border:1px solid #b6c5bb;border-radius:8px;background:transparent;max-width:100%;min-height:48px}.writing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.writing-card{padding:32px;border:1px solid #c8d0c6;border-radius:12px;display:flex;flex-direction:column;gap:20px;transition:border-color 250ms cubic-bezier(.22,1,.36,1),background 250ms cubic-bezier(.22,1,.36,1)}.writing-card:hover{background:#eef0e5;border-color:#557869}.writing-card[hidden]{display:none}.writing-card h2{font-size:clamp(24px,3vw,36px);line-height:1.2;margin:0;letter-spacing:-.04em}.writing-card h2 a{text-decoration:none}.writing-card p{font-size:17px;line-height:1.65;margin:0}.writing-card-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.writing-card time{font-size:12px;color:#557267;margin-top:auto}.writing-card-tags{display:flex;gap:8px;flex-wrap:wrap;font-size:12px}.writing-card-tags a{border:1px solid #ccd2c7;padding:5px 10px;border-radius:50px}.writing-empty{padding:48px;border-top:1px solid #c8d0c6;max-width:740px}.writing-empty h2{font-size:36px;margin-top:0}.writing-layout{display:grid;grid-template-columns:190px minmax(0,780px);gap:48px;max-width:1100px;margin:40px auto 90px;padding:0 24px}.writing-toc{align-self:start;position:sticky;top:100px;font-size:13px;max-height:70vh;overflow:auto}.writing-toc a{display:block;padding:9px 0;border-bottom:1px solid #d9ded4;text-decoration:none}.writing-prose{min-width:0;font-size:18px;line-height:1.85;overflow-wrap:anywhere}.writing-prose>p{margin:0 0 26px}.writing-prose h2{font-size:36px;line-height:1.25;letter-spacing:-.04em;margin:52px 0 22px;scroll-margin-top:100px}.writing-prose h3{font-size:25px;line-height:1.4;margin:36px 0 18px;scroll-margin-top:100px}.writing-prose figure{margin:32px 0}.writing-prose blockquote{border-left:3px solid #748976;padding:16px 24px;margin:32px 0;font-size:22px}.writing-callout{padding:24px;background:#e7ebdc;border-left:3px solid #507660;border-radius:0 8px 8px 0;margin:28px 0}.writing-prose :not(pre)>code{font-size:.85em;background:#e7ebe3;padding:2px 5px;border-radius:4px;white-space:break-spaces}.writing-code{background:#15372d;color:#eef3e9;border-radius:10px;overflow:hidden}.writing-code figcaption{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #466457;font-size:12px}.writing-code button{border:1px solid #93ac98;color:inherit;background:transparent;border-radius:5px;padding:4px 10px;font:inherit;cursor:pointer}.writing-code pre{margin:0;overflow:auto;padding:24px;font-size:14px;line-height:1.7;tab-size:2;max-height:700px;white-space:pre}.writing-code>p{font-size:13px;padding:0 20px 14px}.writing-image img{max-width:100%;height:auto;border-radius:8px;display:block}.writing-image figcaption{font-size:13px;color:#567064;line-height:1.6;margin-top:12px}.writing-table{overflow:auto;margin:28px 0}.writing-table table{border-collapse:collapse;width:100%;font-size:15px}.writing-table th,.writing-table td{border:1px solid #c2cec2;padding:12px;text-align:left;min-width:120px}.writing-table th{background:#e7ebdf}.writing-table caption{text-align:left;font-size:13px;margin-bottom:10px}.writing-prose hr{border:0;border-top:1px solid #c8d0c6;margin:40px 0}.writing-preview-badge{padding:16px 24px;background:#e4dfef;text-align:center}.writing-related{border-top:1px solid #c8d0c6;padding-top:28px;margin-top:48px}
@media(max-width:800px){.writing-grid{grid-template-columns:1fr}.writing-layout{display:block;padding:0 20px}.writing-toc{position:static;max-height:none;margin-bottom:40px}.writing-card{padding:24px}.writing-prose{font-size:17px}.writing-prose h2{font-size:29px}.writing-code pre{padding:16px}.writing-filters label{flex:1;min-width:140px}}
@media(prefers-reduced-motion:reduce){.writing-card{transition:none}}html[data-reduced-motion=true] .writing-card{transition:none}
