.article-page{overflow-x:clip}.article-header{padding:clamp(4rem,8vw,7rem) 0 3rem}.article-breadcrumb{color:var(--quiet);font:.62rem/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;gap:.65rem;margin-bottom:2.5rem;display:flex}.article-breadcrumb a{color:var(--cyan-soft)}.article-header__grid{grid-template-columns:minmax(0,1fr) minmax(14rem,.28fr);align-items:end;gap:clamp(3rem,8vw,8rem);display:grid}.article-header h1{max-width:18ch;font-family:var(--display);letter-spacing:-.075em;margin:1.3rem 0 1.2rem;font-size:clamp(2.5rem,5.5vw,4.8rem);line-height:1.15}.article-header__grid>div>p{max-width:43rem;color:var(--muted);margin:0;font-size:1.04rem;line-height:1.95}.article-meta{border-top:1px solid var(--line);display:grid}.article-meta>div{border-bottom:1px solid var(--line);gap:.25rem;padding:.8rem 0;display:grid}.article-meta span{color:var(--quiet);font:.53rem/1.5 var(--mono);letter-spacing:.08em}.article-meta strong,.article-meta time,.article-meta p{color:var(--text);margin:0;font-size:.76rem;font-weight:500;line-height:1.55}.article-cover{border:1px solid var(--line);aspect-ratio:16/8;background:var(--panel);border-radius:14px;margin:3.5rem 0 0;overflow:hidden}.article-cover img{object-fit:cover;width:100%;height:100%;display:block}.article-shell{border-top:1px solid #35f0e01f;grid-template-columns:minmax(12rem,.27fr) minmax(0,.73fr);align-items:start;gap:clamp(3rem,8vw,8rem);padding:clamp(4rem,8vw,7rem) 0;display:grid}.article-toc{position:sticky;top:7rem}.article-toc>span{color:var(--cyan);font:.56rem/1.5 var(--mono);letter-spacing:.09em}.article-toc nav{border-top:1px solid var(--line);margin-top:1rem;display:grid}.article-toc a{border-bottom:1px solid var(--line);color:var(--muted);padding:.7rem 0;font-size:.75rem;line-height:1.5;transition:color .18s,padding .18s}.article-toc a:hover{color:var(--cyan-soft);padding-left:.35rem}.article-toc nav a{position:relative}.article-toc nav a:before{background:var(--cyan);content:"";opacity:0;border-radius:999px;width:2px;transition:opacity .18s,transform .18s;position:absolute;top:.65rem;bottom:.65rem;left:-.85rem;transform:scaleY(.35);box-shadow:0 0 12px #35f0e080}.article-toc nav a.is-active{color:var(--cyan);padding-left:.35rem}.article-toc nav a.is-active:before{opacity:1;transform:scaleY(1)}.article-toc .article-toc__back{color:var(--cyan-soft);font:.58rem/1.5 var(--mono);letter-spacing:.04em;background:#35f0e00a;border:1px solid #35f0e033;border-radius:6px;justify-content:space-between;margin-top:1rem;padding:.7rem .75rem;display:flex}.article-toc .article-toc__back:hover{background:#35f0e014;border-color:#35f0e06b;padding:.7rem .75rem}.article-content{color:#c6d3d0;width:min(100%,47rem);font-size:1.04rem;line-height:1.95}.article-content>:first-child{margin-top:0}.article-content h2,.article-content h3,.article-content h4,.article-content h5{color:var(--text);font-family:var(--display);letter-spacing:-.045em;scroll-margin-top:7rem;line-height:1.35}.article-content h2{margin:3.8rem 0 1.2rem;font-size:clamp(1.8rem,3.3vw,2.7rem)}.article-content h3{margin:3rem 0 1rem;font-size:1.55rem}.article-content h4,.article-content h5{margin:2.5rem 0 .8rem;font-size:1.2rem}.article-content p{margin:1.25rem 0}.article-content a{color:var(--cyan-soft);text-underline-offset:.18em;text-decoration:underline #35f0e073}.article-content ul,.article-content ol{margin:1.4rem 0;padding-left:1.5rem}.article-content li{margin:.55rem 0;padding-left:.3rem}.article-content blockquote{border-left:2px solid var(--cyan);color:var(--cyan-soft);margin:2rem 0;padding:.3rem 0 .3rem 1.35rem}.article-content pre{border:1px solid var(--line-strong);color:#d6e2df;font:.82rem/1.75 var(--mono);background:#050807;border-radius:10px;margin:2rem 0;padding:1.25rem;overflow-x:auto}.article-content :not(pre)>code{color:var(--cyan-soft);font-family:var(--mono);background:#35f0e00f;border:1px solid #35f0e029;border-radius:4px;padding:.15em .36em;font-size:.88em}.article-content hr{border:0;border-top:1px solid var(--line);margin:3rem 0}.article-content figure{margin:2.5rem 0}.article-content figure img{border:1px solid var(--line);border-radius:10px;max-width:100%;height:auto;display:block}.article-image__trigger{cursor:zoom-in;text-align:left;background:0 0;border:0;border-radius:10px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.article-image__trigger img{width:100%;transition:opacity .18s,transform .5s}.article-image__trigger:hover img{opacity:.92;transform:scale(1.008)}.article-image__trigger:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.article-image__trigger>span{color:var(--cyan-soft);font:.5rem/1 var(--mono);background:#050807d6;border:1px solid #35f0e059;border-radius:999px;padding:.4rem .55rem;position:absolute;bottom:.8rem;right:.8rem}.article-content figcaption{color:var(--quiet);text-align:center;margin-top:.65rem;font-size:.72rem}.article-table-wrap{border:1px solid var(--line);border-radius:10px;margin:2rem 0;overflow-x:auto}.article-content table{border-collapse:collapse;width:100%;min-width:36rem;font-size:.86rem;line-height:1.65}.article-content th,.article-content td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.8rem .9rem}.article-content tr>:last-child{border-right:0}.article-content tbody tr:last-child>*{border-bottom:0}.article-content thead th{color:var(--text);background:#35f0e012;font-weight:600}.article-content tbody th{color:var(--cyan-soft);background:#35f0e006;font-weight:600}.article-content details{border:1px solid var(--line);background:#0d191799;border-radius:8px;margin:1.5rem 0;padding:1rem 1.15rem}.article-content summary{color:var(--text);cursor:pointer;font-weight:600}.article-callout{background:#35f0e00e;border:1px solid #35f0e038;border-radius:10px;gap:.9rem;margin:2rem 0;padding:1.15rem 1.25rem;display:flex}.article-callout p{margin:0}.article-todo{align-items:start;gap:.65rem;display:flex}.article-todo>span{color:var(--cyan)}.article-todo p{margin:0}.article-bookmark,.article-embed{border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem}.article-next{border-top:1px solid #35f0e01f;justify-content:space-between;align-items:end;gap:3rem;padding:clamp(4rem,8vw,7rem) 0;display:flex}.article-next h2{max-width:18ch;font-family:var(--display);letter-spacing:-.065em;margin:1rem 0 0;font-size:clamp(1.9rem,4vw,3.2rem);line-height:1.2}.article-next>div:last-child{flex-wrap:wrap;gap:.75rem;display:flex}.article-lightbox{width:min(96vw,112rem);max-width:none;max-height:94vh;color:var(--text);background:#050807;border:1px solid #35f0e057;border-radius:12px;padding:0;overflow:hidden}.article-lightbox::backdrop{backdrop-filter:blur(8px);background:#000000db}.article-lightbox__close{z-index:2;width:2.7rem;height:2.7rem;color:var(--text);cursor:pointer;background:#050807e0;border:1px solid #35f0e066;border-radius:50%;place-items:center;padding:0;font-size:1.4rem;display:grid;position:fixed;top:1.5rem;right:1.5rem}.article-lightbox__content{grid-template-rows:auto minmax(0,1fr) auto;max-height:94vh;display:grid}.article-lightbox__meta{border-bottom:1px solid var(--line);gap:1rem;padding:.8rem 1rem;display:flex}.article-lightbox__meta span{color:var(--cyan);font:.54rem/1 var(--mono)}.article-lightbox__meta strong{font-size:.8rem}.article-lightbox img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.article-lightbox p{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:.75rem 1rem;font-size:.72rem}@media (width<=720px){.article-lightbox__close{top:.75rem;right:.75rem}}@media (width<=820px){.article-header__grid,.article-shell{grid-template-columns:1fr}.article-toc{position:static}.article-next{flex-direction:column;align-items:flex-start}}
