.prose h1,.prose h2,.prose h3{color:var(--text-charcoal);font-family:"Source Serif 4",Georgia,serif;font-weight:600}.prose p,.prose ul,.prose ol{color:var(--text-charcoal);line-height:1.75}.prose a{color:var(--accent-terracotta);text-underline-offset:3px;text-decoration:underline}.project-detail-prose{width:100%;color:var(--text-charcoal);font-variant-numeric:lining-nums proportional-nums;font-feature-settings:"lnum" 1, "pnum" 1;text-wrap:pretty;font-family:"Source Serif 4",Noto Serif SC,Newsreader,Songti SC,Source Han Serif SC,STSong,Georgia,serif;font-size:1.02rem;line-height:1.86}.project-detail-prose>div>h2{border-top:1px solid var(--border-stone);color:var(--text-charcoal);letter-spacing:-.012em;scroll-margin-top:var(--anchor-offset);margin:3.1rem 0 1rem;padding-top:1.15rem;font-family:"Source Serif 4",Noto Serif SC,Newsreader,Songti SC,Source Han Serif SC,STSong,Georgia,serif;font-size:1.55rem;font-weight:700;line-height:1.3}.project-detail-prose>div>h2:first-child{border-top:0;margin-top:0;padding-top:0}.project-detail-prose>div>h3{color:var(--text-charcoal);scroll-margin-top:var(--anchor-offset);margin:1.9rem 0 .65rem;font-family:"Source Serif 4",Noto Serif SC,Newsreader,Songti SC,Source Han Serif SC,STSong,Georgia,serif;font-size:1.18rem;font-weight:700;line-height:1.4}.project-detail-prose>div>p{max-width:none;color:var(--text-charcoal);margin:1rem 0;line-height:1.86}.project-detail-prose>div>ul,.project-detail-prose>div>ol{max-width:none;margin:1rem 0 1.55rem;padding-left:1.5rem}.project-detail-prose>div>ul>li,.project-detail-prose>div>ol>li{margin:.68rem 0;padding-left:.25rem;line-height:1.82}.project-detail-prose>div>blockquote{border-left:3.5px solid var(--accent-terracotta);max-width:none;color:var(--text-charcoal);background:#c15f3d0d;border-radius:0 .75rem .75rem 0;margin:1.6rem 0;padding:1rem 1.25rem;box-shadow:0 1px 3px #00000005}.dark .project-detail-prose>div>blockquote{border-left-color:var(--accent-terracotta);background:#d9770614}.project-detail-prose>div>blockquote p{margin:0;line-height:1.76}.project-detail-prose strong{color:var(--text-charcoal);font-weight:700}.project-detail-prose table{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1, "tnum" 1}.project-detail-prose table:not([class]){border-collapse:separate;border-spacing:0;border:1px solid var(--border-stone);border-radius:.75rem;width:100%;max-width:100%;margin:1.4rem 0 1.75rem;font-size:.93rem;line-height:1.58;overflow:hidden}.project-detail-prose table:not([class]) thead th{color:var(--text-charcoal);letter-spacing:.015em;border-bottom:1px solid var(--border-stone);background:#f5f2ea;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Noto Sans SC,Microsoft YaHei,sans-serif;font-size:.82rem;font-weight:600}.dark .project-detail-prose table:not([class]) thead th{background:#1c1b19}.project-detail-prose table:not([class]) th,.project-detail-prose table:not([class]) td{vertical-align:top;border-bottom:1px solid #e7e3dca6;padding:.72rem .85rem}.dark .project-detail-prose table:not([class]) th,.dark .project-detail-prose table:not([class]) td{border-bottom-color:#2e2c28cc}.project-detail-prose table:not([class]) tbody tr:last-child td{border-bottom:0}.project-detail-prose table:not([class]) tbody tr:nth-child(2n) td{background:#f5f2ea73}.dark .project-detail-prose table:not([class]) tbody tr:nth-child(2n) td{background:#1c1b1973}@media (max-width:767px){.project-detail-prose table:not([class]){-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}}.project-detail-showcase .project-chapter-card{position:relative;overflow:hidden}.project-detail-showcase .project-chapter-h2{border-top:0;border-bottom:1px solid var(--border-stone);scroll-margin-top:var(--anchor-offset);align-items:flex-start;gap:.9rem;margin:0 0 1.5rem;padding:0 0 1.15rem;display:flex}.project-detail-showcase .project-chapter-num{color:#a94e2f;letter-spacing:.02em;font-variant-numeric:tabular-nums;background:#faeae4;border:1px solid #f5d6cc;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;margin-top:.15rem;padding:.25rem .6rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;font-weight:700;line-height:1.2;display:inline-flex}.project-detail-showcase .project-chapter-num:before{content:"0"}.dark .project-detail-showcase .project-chapter-num{color:#e88c68;background:#34241d;border-color:#523023}.project-detail-showcase .project-chapter-heading-body{flex:1;min-width:0;display:block}.project-detail-showcase .project-chapter-main{color:var(--text-charcoal);letter-spacing:-.01em;font-size:1.42rem;font-weight:700;line-height:1.32;display:block}.project-detail-showcase .project-chapter-colon{opacity:0;width:0;height:0;display:inline-block;overflow:hidden}.project-detail-showcase .project-chapter-sub{color:var(--text-muted);margin-top:.35rem;font-size:.92rem;font-weight:500;line-height:1.5;display:block}.project-detail-showcase .project-sub-h3{color:var(--text-charcoal);scroll-margin-top:var(--anchor-offset);align-items:baseline;gap:.6rem;margin:2rem 0 .85rem;padding-top:.25rem;font-size:1.15rem;font-weight:700;line-height:1.42;display:flex}.project-detail-showcase .project-chapter-h2+.project-sub-h3{margin-top:.5rem}.project-detail-showcase .project-sub-num{color:#a94e2f;letter-spacing:.02em;font-variant-numeric:tabular-nums;background:#f5f2ea;border:1px solid #e7e3dc;border-radius:.375rem;flex-shrink:0;align-items:center;padding:.12rem .5rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:700;display:inline-flex;transform:translateY(-1px)}.dark .project-detail-showcase .project-sub-num{color:#e88c68;background:#2e2c28;border-color:#3a3935}.project-detail-showcase .project-chapter-card>p{color:#2c2b28;margin:.95rem 0;line-height:1.88}.dark .project-detail-showcase .project-chapter-card>p{color:#dfddd6}.project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul)){flex-direction:column;gap:.65rem;margin:1.05rem 0 1.55rem;padding-left:0;list-style:none;display:flex}.project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li{color:#2c2b28;margin:0;padding:.1rem 0 .1rem 1.25rem;line-height:1.84;position:relative}.project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li:before{content:"";opacity:.85;background:#c15f3d;border-radius:1.5px;width:5px;height:5px;position:absolute;top:.78rem;left:.15rem}.dark .project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li{color:#dfddd6}.dark .project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li:before{background:#e88c68}.project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li>strong:first-child{color:#141413;font-weight:700}.project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li>p:first-child>strong:first-child{color:#141413;font-weight:700}.dark .project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li>strong:first-child{color:#faf9f5}.dark .project-detail-showcase .project-chapter-card>ul:not(:has(>li>ul))>li>p:first-child>strong:first-child{color:#faf9f5}.project-detail-showcase .project-chapter-card>ul:has(>li>ul){grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem;margin:1.15rem 0 1.6rem;padding-left:0;list-style:none;display:grid}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li{overflow-wrap:anywhere;background:#0f766e06;border:1px solid #e7e3dc;border-top:3.5px solid #0f766e;border-radius:.875rem;min-width:0;margin:0;padding:1.1rem 1.2rem}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li{background:#10b9810a;border-color:#10b981 #2e2c28 #2e2c28}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li:nth-child(2){background:#c15f3d08;border-top-color:#c15f3d}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li:nth-child(2){background:#f59e0b0d;border-top-color:#f59e0b}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>strong:first-child{color:#0f766e;margin-bottom:.5rem;font-size:1.02rem;display:inline-block}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>p:first-child>strong:first-child{color:#0f766e;margin-bottom:.5rem;font-size:1.02rem;display:inline-block}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>strong:first-child{color:#34d399}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>p:first-child>strong:first-child{color:#34d399}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li:nth-child(2)>strong:first-child{color:#a94e2f}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li:nth-child(2)>p:first-child>strong:first-child{color:#a94e2f}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li:nth-child(2)>strong:first-child{color:#fbbf24}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li:nth-child(2)>p:first-child>strong:first-child{color:#fbbf24}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>ul{flex-direction:column;gap:.65rem;margin:.5rem 0 0;padding-left:0;list-style:none;display:flex}.project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>ul>li{background:#ffffffd9;border:1px solid #e7e3dcd9;border-radius:.6rem;margin:0;padding:.7rem .85rem;font-size:.94rem;line-height:1.72}.dark .project-detail-showcase .project-chapter-card>ul:has(>li>ul)>li>ul>li{background:#181715bf;border-color:#3a3935bf}.project-detail-showcase .project-chapter-card>ol{counter-reset:sop-step;flex-direction:column;gap:.8rem;margin:1.15rem 0 1.7rem;padding-left:0;list-style:none;display:flex}.project-detail-showcase .project-chapter-card>ol>li{counter-increment:sop-step;color:#2c2b28;background:#fbf9f4;border:1px solid #ece8df;border-radius:.75rem;margin:0;padding:.95rem 1.15rem .95rem 3.25rem;line-height:1.8;position:relative}.dark .project-detail-showcase .project-chapter-card>ol>li{color:#dfddd6;background:#1b1a18;border-color:#2e2c28}.project-detail-showcase .project-chapter-card>ol>li:before{content:"0" counter(sop-step);color:#a94e2f;font-variant-numeric:tabular-nums;background:#faeae4;border:1px solid #f5d6cc;border-radius:.45rem;justify-content:center;align-items:center;width:1.65rem;height:1.65rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.74rem;font-weight:700;display:inline-flex;position:absolute;top:1.05rem;left:.9rem}.dark .project-detail-showcase .project-chapter-card>ol>li:before{color:#e88c68;background:#34241d;border-color:#523023}.project-detail-showcase .project-chapter-card>ol>li>strong:first-child,.project-detail-showcase .project-chapter-card>ol>li>p:first-child>strong:first-child{color:#141413;font-weight:700}.dark .project-detail-showcase .project-chapter-card>ol>li>strong:first-child,.dark .project-detail-showcase .project-chapter-card>ol>li>p:first-child>strong:first-child{color:#faf9f5}.project-detail-showcase :not(pre)>code{color:#a94e2f;word-break:break-all;background:#f3efe6;border:1px solid #e2ddd2;border-radius:.375rem;margin:0 .15rem;padding:.15rem .45rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.84em;font-weight:600}.dark .project-detail-showcase :not(pre)>code{color:#f09a7a;background:#2c2a26;border-color:#3e3c37}.project-detail-showcase :not(pre)>code:before,.project-detail-showcase :not(pre)>code:after{content:none}@media (max-width:640px){.project-detail-prose{font-size:1rem;line-height:1.8}.project-detail-prose>div>h2{margin-top:2.45rem;padding-top:.95rem;font-size:1.36rem}.project-detail-prose>div>h3{margin-top:1.55rem;font-size:1.08rem}.project-detail-prose>div>p{line-height:1.82}.project-detail-prose>div>ul,.project-detail-prose>div>ol{padding-left:1.3rem}.project-detail-prose>div>ul>li,.project-detail-prose>div>ol>li{margin:.58rem 0;line-height:1.8}.project-detail-showcase .project-chapter-h2{gap:.65rem}.project-detail-showcase .project-chapter-main{font-size:1.22rem}.project-detail-showcase .project-chapter-sub{font-size:.85rem}.project-detail-showcase .project-sub-h3{font-size:1.05rem}.project-detail-showcase .project-chapter-card>ol>li{padding-left:2.85rem}.project-detail-showcase .project-chapter-card>ol>li:before{left:.7rem}}
