.project-detail[data-astro-cid-ovxcmftc]{max-width:800px}.project-header[data-astro-cid-ovxcmftc]{margin-bottom:3rem}.back-link[data-astro-cid-ovxcmftc]{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted);text-decoration:none;margin-bottom:2rem;transition:color .2s ease}.back-link[data-astro-cid-ovxcmftc]:hover{color:var(--text)}.project-title[data-astro-cid-ovxcmftc]{font-size:clamp(2rem,4vw,2.5rem);margin:0 0 1rem;line-height:1.2}.project-description[data-astro-cid-ovxcmftc]{margin:0 0 2rem}.project-meta[data-astro-cid-ovxcmftc]{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.project-meta[data-astro-cid-ovxcmftc] .kw-list[data-astro-cid-ovxcmftc]{flex:1;margin:0}.project-content[data-astro-cid-ovxcmftc]{line-height:1.8}.prose[data-astro-cid-ovxcmftc]{max-width:none}.prose[data-astro-cid-ovxcmftc] h2{font-size:1.75rem;font-weight:600;margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);color:var(--text)}.prose[data-astro-cid-ovxcmftc] h3{font-size:1.35rem;font-weight:600;margin:2rem 0 .75rem;color:var(--text)}.prose[data-astro-cid-ovxcmftc] h4{font-size:1.1rem;font-weight:600;margin:1.5rem 0 .5rem;color:var(--text)}.prose[data-astro-cid-ovxcmftc] p{margin:1rem 0;color:var(--muted);line-height:1.7}.prose[data-astro-cid-ovxcmftc] strong{color:var(--text);font-weight:600}.prose[data-astro-cid-ovxcmftc] em{font-style:italic}.prose[data-astro-cid-ovxcmftc] a{color:var(--text);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:2px;transition:text-decoration-color .2s ease}.prose[data-astro-cid-ovxcmftc] a:hover{text-decoration-color:var(--text)}.prose[data-astro-cid-ovxcmftc] ul,.prose[data-astro-cid-ovxcmftc] ol{margin:1rem 0;padding-left:2rem}.prose[data-astro-cid-ovxcmftc] ul{list-style:none}.prose[data-astro-cid-ovxcmftc] ul li{position:relative;padding-left:1.5rem}.prose[data-astro-cid-ovxcmftc] ul li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;background:var(--text);border:1px solid var(--text);transition:background-color .2s ease}.prose[data-astro-cid-ovxcmftc] ul li:hover:before{background:var(--bg)}.prose[data-astro-cid-ovxcmftc] li{margin:.5rem 0;color:var(--muted);line-height:1.7}.prose[data-astro-cid-ovxcmftc] ol li::marker{color:var(--text);font-weight:600}.prose[data-astro-cid-ovxcmftc] code{background:var(--bg-elev);color:var(--text);padding:.2rem .4rem;border-radius:3px;font-size:.9em;font-family:var(--font-mono);border:1px solid var(--border)}.prose[data-astro-cid-ovxcmftc] pre{background:var(--bg-elev);padding:1.25rem;border-radius:6px;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--border);position:relative}.prose[data-astro-cid-ovxcmftc] pre code{background:none;padding:0;border-radius:0;font-size:.875rem;border:none;color:var(--text);line-height:1.6}.prose[data-astro-cid-ovxcmftc] table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.9rem;border:1px solid var(--border);border-radius:6px;overflow:hidden}.prose[data-astro-cid-ovxcmftc] thead{background:var(--bg-elev)}.prose[data-astro-cid-ovxcmftc] th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text);border-bottom:2px solid var(--border);border-right:1px solid var(--border)}.prose[data-astro-cid-ovxcmftc] th:last-child{border-right:none}.prose[data-astro-cid-ovxcmftc] td{padding:.75rem 1rem;color:var(--muted);border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.prose[data-astro-cid-ovxcmftc] td:last-child{border-right:none}.prose[data-astro-cid-ovxcmftc] tbody tr:last-child td{border-bottom:none}.prose[data-astro-cid-ovxcmftc] tbody tr{transition:background-color .2s ease}.prose[data-astro-cid-ovxcmftc] tbody tr:hover{background:var(--bg-elev)}.prose[data-astro-cid-ovxcmftc] blockquote{border-left:3px solid var(--text);padding-left:1rem;margin:1.5rem 0;color:var(--muted);font-style:italic;background:var(--bg-elev);padding:1rem 1rem 1rem 1.5rem;border-radius:0 4px 4px 0}.prose[data-astro-cid-ovxcmftc] blockquote p{margin:.5rem 0}.prose[data-astro-cid-ovxcmftc] hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}.prose[data-astro-cid-ovxcmftc] img{max-width:100%;height:auto;border-radius:6px;margin:1.5rem 0;border:1px solid var(--border)}[data-theme=light] .prose[data-astro-cid-ovxcmftc] code,[data-theme=light] .prose[data-astro-cid-ovxcmftc] pre{background:var(--bg-elev);border-color:var(--border)}[data-theme=light] .prose[data-astro-cid-ovxcmftc] pre code{background:none;color:var(--text)}.prose[data-astro-cid-ovxcmftc] code::selection,.prose[data-astro-cid-ovxcmftc] pre::selection,.prose[data-astro-cid-ovxcmftc] pre code::selection{background:transparent;color:inherit}[data-theme=light] .prose[data-astro-cid-ovxcmftc] code::selection,[data-theme=light] .prose[data-astro-cid-ovxcmftc] pre::selection,[data-theme=light] .prose[data-astro-cid-ovxcmftc] pre code::selection{background:#0000001a;color:inherit}[data-theme=light] .prose[data-astro-cid-ovxcmftc] table,[data-theme=light] .prose[data-astro-cid-ovxcmftc] th,[data-theme=light] .prose[data-astro-cid-ovxcmftc] td{border-color:var(--border)}[data-theme=light] .prose[data-astro-cid-ovxcmftc] tbody tr:hover{background:var(--bg-elev)}@media(max-width:768px){.project-meta[data-astro-cid-ovxcmftc]{flex-direction:column;align-items:flex-start}.project-meta[data-astro-cid-ovxcmftc] .btn[data-astro-cid-ovxcmftc]{width:100%;justify-content:center}.prose[data-astro-cid-ovxcmftc] table{display:block;overflow-x:auto;white-space:nowrap}.prose[data-astro-cid-ovxcmftc] th,.prose[data-astro-cid-ovxcmftc] td{padding:.5rem .75rem}}
