.portfolio .buttonTop{position:fixed;bottom:20px;right:20px;z-index:10}.portfolio .buttonTop button{display:grid;place-items:center;height:44px;width:44px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--accent);font-size:20px}.portfolio .buttonTop button:hover{border-color:var(--accent)}.portfolio .article .articleContent{width:100%;max-width:760px;margin:0 auto;font-size:16px;line-height:1.85;overflow-wrap:anywhere}.portfolio .article .articleContent>h1{margin:8px 0 20px;font-size:clamp(28px,3.6vw,42px);font-weight:400;line-height:1.35;letter-spacing:-.04em}.portfolio .articleMetadata{margin:0 0 28px;font:12px/1.8 var(--mono);color:var(--muted)}.portfolio .article .download{padding:16px 18px;margin:20px 0;border:1px solid var(--line);border-radius:6px;background:var(--surface);line-height:1.65}.portfolio .article .download a{color:var(--accent)}.portfolio .article .heart{display:inline-block;width:12px;margin-left:12px;vertical-align:middle;animation:heart-pulse 2s infinite}.portfolio .article :is(.articleCover,.pdf){width:100%;max-width:100%;border:1px solid var(--line);border-radius:8px}.portfolio .article .pdf{height:440px}.portfolio .article .contentTable{border:1px solid var(--line);border-left:2px solid var(--accent);border-radius:6px;padding:24px 30px;background:var(--surface);margin:12px 0 44px;font-size:14px;line-height:1.8}.portfolio .article .contentTable h3{margin:0 0 20px}.portfolio .article .contentTable ul{padding-left:22px}.portfolio .article .contentTable li{margin:7px 0}.portfolio .article .contentTable a b{color:inherit}.portfolio .article .textBlock{text-align:left}.portfolio .article :is(h2,h3,h4,h5){scroll-margin-top:24px;letter-spacing:-.025em}.portfolio .article h2{font-size:28px;margin:64px 0 24px}.portfolio .article h3{font-size:23px;margin:44px 0 20px}.portfolio .article h4{font-size:19px;margin:32px 0 16px}.portfolio .article h5{font-size:17px;margin:28px 0 14px}.portfolio .article .tag{color:var(--accent);font-family:var(--mono);font-size:.8em;font-weight:400}.portfolio .article ins{text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:var(--line)}.portfolio .article .citation{margin:24px 0;padding:16px 24px;border-left:2px solid var(--accent);background:var(--accent-soft);font-size:.94em}.portfolio .article .quotes{color:var(--accent);font-size:22px}.portfolio .article .image{max-width:100%;text-align:center}.portfolio .article :is(.image img,img.image){max-width:100%;height:auto;margin:12px 0;border-radius:6px;vertical-align:top;border:1px solid var(--line)}.portfolio .article .imageDescription{width:min(100%,600px);margin:8px auto 20px;color:var(--muted);font-size:12px;line-height:1.7}.portfolio .article .imageDescription a{color:var(--muted);text-decoration:underline}.portfolio .article table{display:block;overflow-x:auto;max-width:100%;width:100%;border-collapse:collapse;margin:24px 0;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:14px;line-height:1.7}.portfolio .article :is(th,td){padding:14px 18px;vertical-align:top;text-align:left;min-width:140px;border-bottom:1px solid var(--line)}.portfolio .article :is(th,td)+:is(th,td){border-left:1px solid var(--line)}.portfolio .article td code{overflow-wrap:anywhere}.portfolio .article .codeBlock{width:100%;max-width:100%;margin:24px 0;padding:20px 24px;font-size:13px;line-height:1.8;border:1px solid var(--line);border-radius:6px;background:var(--surface);text-align:left;overflow-wrap:anywhere;overflow-x:auto}.portfolio .article .checkboxes{list-style:none;padding-left:0;font-size:14px}.portfolio .article .checkboxes input{pointer-events:none}.portfolio .article .mark{width:1.2em;height:1.2em;margin:0 .75em -.2em}@keyframes heart-pulse{0%,to{transform:scale(1)}70%{transform:scale(1.3)}}@media (max-width: 700px){.portfolio .article .articleContent{font-size:15px;line-height:1.85}.portfolio .article .contentTable{padding:20px 16px;font-size:13px}.portfolio .article .contentTable ul{padding-left:16px}.portfolio .article .citation{padding:12px 16px}.portfolio .article .pdf{height:280px}.portfolio .article .codeBlock{padding:16px;font-size:12px}}
