.m-breadcrumb{font-size:var(--text-sm);color:var(--muted);padding:var(--space-6) 0 0;display:flex;align-items:center;gap:var(--space-2)}.m-breadcrumb a:hover{color:var(--ink)}.m-breadcrumb .sep{color:var(--line)}.m-article-head{padding:var(--space-8) 0 var(--space-10);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:var(--space-4)}.m-article-tags{display:flex;gap:var(--space-2);flex-wrap:wrap}.m-article-byline{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-1)}.m-byline-avatar{width:36px;height:36px;border-radius:var(--radius-pill);overflow:hidden;background:var(--chip);border:1px solid var(--line);display:grid;place-items:center;flex-shrink:0}.m-byline-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.m-byline-meta{display:flex;flex-direction:column;font-size:var(--text-sm)}.m-byline-meta strong{font-weight:var(--font-semibold)}.m-byline-meta span{color:var(--muted);font-size:var(--text-sm)}.m-cover{width:100%;margin:var(--space-8) 0;aspect-ratio:16/9;background:var(--chip);border:1px solid var(--line);border-radius:var(--radius-md);position:relative;overflow:hidden}.m-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}@media (max-width:768px){.m-cover{width:calc(100% + var(--gutter) * 2);margin:var(--space-8) calc(var(--gutter) * -1);border-radius:0;border-left:0;border-right:0}}.m-article{padding:var(--space-6) 0 var(--space-10);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--ink)}.m-article>*+*{margin-top:var(--space-5)}.m-article p{color:var(--ink-soft)}.m-article h2{font-size:var(--text-xl);letter-spacing:var(--tracking-tight);margin-top:var(--space-10)}.m-article h2,.m-article h3{font-family:var(--display);font-weight:var(--font-semibold);line-height:var(--leading-snug)}.m-article h3{font-size:var(--text-lg);letter-spacing:var(--tracking-snug);margin-top:var(--space-6);color:var(--ink)}.m-article ol,.m-article ul{padding-left:var(--space-6);color:var(--ink-soft)}.m-article ul{list-style:disc}.m-article ol{list-style:decimal}.m-article li{margin:var(--space-2) 0}.m-article li::marker{color:var(--accent)}.m-article blockquote{margin:var(--space-8) 0;padding:var(--space-3) var(--space-5);border-left:3px solid var(--accent);font-family:var(--display);font-weight:var(--font-medium);font-size:var(--text-md);letter-spacing:var(--tracking-snug);line-height:var(--leading-normal);color:var(--ink);background:color-mix(in oklab,var(--accent) 4%,transparent)}.m-article code{font-family:var(--mono);font-size:.88em;padding:.1em .4em;background:var(--chip);border-radius:var(--radius-sm)}.m-article a{color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:1px;transition:color var(--transition),background var(--transition)}.m-article a:hover{color:var(--accent)}.m-article h4{font-family:var(--display);font-weight:var(--font-semibold);font-size:var(--text-md);letter-spacing:var(--tracking-snug);margin-top:var(--space-5);line-height:var(--leading-snug)}.m-article img{max-width:100%;height:auto;border-radius:var(--radius-md)}.m-article figure{margin:var(--space-8) 0}.m-article figcaption{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--muted);text-align:center}.m-article pre{overflow-x:auto;border-radius:var(--radius-md)}.m-article table{width:100%;border-collapse:collapse;font-size:var(--text-sm);display:block;overflow-x:auto}.m-article td,.m-article th{border:1px solid var(--line);padding:var(--space-2) var(--space-3);text-align:left}.m-article th{font-weight:var(--font-semibold);background:var(--chip)}.m-article hr{border:0;margin:var(--space-10) auto;width:var(--space-16)}.m-article hr,.m-article-foot{border-top:1px solid var(--line)}.m-article-foot{padding:var(--space-8) 0}.m-foot-block h3{font-family:var(--display);font-weight:var(--font-semibold);font-size:var(--text-md);line-height:var(--leading-snug);letter-spacing:var(--tracking-snug);margin-bottom:var(--space-3);color:var(--ink)}.m-share{display:flex;gap:var(--space-2);flex-wrap:wrap}.m-share a{display:inline-grid;place-items:center;width:var(--space-10);height:var(--space-10);border-radius:var(--radius-pill);background:var(--chip);color:var(--chip-ink);transition:background var(--transition),color var(--transition);font-size:var(--text-sm);font-weight:var(--font-semibold)}.m-share a:hover{background:var(--accent);color:var(--on-accent)}.m-related{border-top:1px solid var(--line);padding:var(--space-10) 0}.m-related-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}@media (max-width:560px){.m-related-list{grid-template-columns:1fr}}.m-related-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color var(--transition),transform var(--transition)}.m-related-card:hover{border-color:var(--ink);transform:translateY(-1px)}.m-related-card:hover .m-rc-title{color:var(--accent)}.m-rc-date{font-size:var(--text-sm);color:var(--muted)}.m-rc-title{transition:color var(--transition);text-wrap:balance}.m-rc-meta{margin-top:var(--space-2);display:flex;gap:var(--space-2);flex-wrap:wrap}.m-back{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-6) 0 var(--space-10);color:var(--muted);font-size:var(--text-sm)}.m-back:hover{color:var(--ink)}.m-subscribe-wrap{display:flex;position:relative;max-width:360px}.m-subscribe-input{flex:1;background:var(--chip);border:1px solid var(--line);border-right:0;border-radius:var(--radius-pill) 0 0 var(--radius-pill);padding:var(--field-py) var(--field-px);font-size:var(--text-sm);font-family:var(--body);color:var(--ink);transition:border-color var(--transition);min-width:0}.m-subscribe-input::-moz-placeholder{color:var(--muted)}.m-subscribe-input::placeholder{color:var(--muted)}.m-subscribe-input:focus{border-color:var(--accent);background:var(--bg)}.m-subscribe-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--control-py-sm) var(--control-px-sm);background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);border-radius:0 var(--radius-pill) var(--radius-pill) 0;font-size:var(--text-sm);font-weight:var(--font-medium);font-family:var(--body);cursor:pointer;white-space:nowrap;transition:filter var(--transition)}.m-subscribe-btn:hover{filter:brightness(1.08)}.m-subscribe-msg{display:block;margin-top:var(--space-2);font-size:var(--text-sm);color:var(--muted)}