:root{--color-primary: #2949fd;--color-secondary: #a4a9c4}body{width:100%;height:100%;position:absolute;margin:0;padding:0}.text\:blue{color:var(--color-primary)}.bg\:green{background:#06b300}.bg\:yellow{background:#e7e406}.bg\:red{background:#b30000}header nav>*:hover:not(.active){background-color:var(--color-secondary)}.button-blue{display:inline-flex;flex-wrap:nowrap;align-items:center;background-color:#07176d;color:#fff!important;white-space:nowrap}.button-blue svg{flex:0 0 auto}.button-blue:hover{background-color:#a4a9c4;color:#333!important}#moon-view{position:absolute;height:100%;width:100%;top:50%;left:50%;transform:translate(-50%,-50%)}#moon-anchor{position:absolute;--size: 40vw;--width: var(--size);--height: var(--size);--anchor-x: 50%;--anchor-y: 50%;left:50%;top:50%;z-index:10000}a.button{background-color:#fff;color:#1831bd;padding:1rem 2rem;border-radius:10px;border:1px solid #1c1fd6;text-decoration:none;font-weight:600;display:inline-block;text-align:center;cursor:pointer;transition:all .3s ease-in-out}a.button:hover,a.button\:secondary{background-color:#2146ff;color:#fff;padding:1rem 2rem;border-radius:10px;border:1px solid #b0b1da;text-decoration:none;font-weight:600;display:inline-block;text-align:center;cursor:pointer}a.button\:secondary:hover{background-color:#fff;color:#1831bd;padding:1rem 2rem;border-radius:10px;border:1px solid #1c1fd6;text-decoration:none;font-weight:600;display:inline-block;text-align:center;cursor:pointer}#page-scroll{z-index:1}.project-page{color:#475569;background:#fff}.project-page .project-container{width:min(1180px,100%);margin:0 auto;padding:clamp(2.5rem,6vw,5rem) clamp(1.25rem,4vw,3rem)}.project-page .project-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding-bottom:2rem;margin-bottom:2.5rem;border-bottom:1px solid #e2e8f0}.project-page h1{color:#172033;font-size:clamp(2rem,4vw,3.25rem);line-height:1.12;margin:0 0 1rem;overflow-wrap:anywhere}.project-page .project-heading-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;color:#64748b}.project-page .project-heading-meta>span{color:#334155;font-weight:600}.project-page .project-edit{flex-shrink:0;padding:.6rem 1rem;border:1px solid #cbd5e1;border-radius:.5rem;color:#2949fd;font-weight:600}.project-page .project-overview{display:flex;align-items:flex-start;gap:clamp(2rem,5vw,4rem)}.project-page .project-logo{flex:0 0 28%;padding:1.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:1rem}.project-page .project-logo img{display:block;width:100%;height:auto;max-height:280px;-o-object-fit:contain;object-fit:contain}.project-page .project-summary{flex:1;min-width:0}.project-page .project-description{font-size:1.075rem;line-height:1.8;overflow-wrap:anywhere}.project-page .project-description p{margin:0 0 1.4rem}.project-page .project-description ul,.project-page .project-description ol{padding-left:1.5rem;margin-bottom:1.4rem}.project-page .project-description ul{list-style:disc}.project-page .project-description ol{list-style:decimal}.project-page .project-link{display:inline-flex;align-items:center;gap:1rem;margin-top:.5rem;padding:.8rem 1.2rem;border-radius:.5rem;background:#2949fd;color:#fff;font-weight:600}.project-page .project-link:hover{background:#203acb}.project-page a:focus-visible{outline:3px solid #2949fd;outline-offset:4px}.project-page .project-github{display:flex;align-items:center;gap:.75rem;width:-moz-fit-content;width:fit-content;max-width:100%;margin-top:2rem;color:#2949fd;font-weight:600}.project-page .project-github svg{flex:0 0 24px;width:24px;height:24px;fill:#172033}.project-page .project-github span{min-width:0;overflow-wrap:anywhere}.project-page .project-github:hover span{text-decoration:underline}.project-page .project-details{display:grid;gap:1.5rem;padding:2rem 0;margin-top:2.5rem;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.project-page .project-detail-group{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:baseline;gap:1rem}.project-page .project-detail-group h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:#64748b;margin:0}.project-page .project-chips{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:0}.project-page .project-chips li{border:1px solid #dce3fa;border-radius:999px;padding:.4rem .85rem;background:#f0f3ff;color:#2944ab;font-size:.875rem;line-height:1.4;overflow-wrap:anywhere;max-width:100%}.project-page .project-tags li{background:#f8fafc;border-color:#e2e8f0;color:#475569}.project-page .project-gallery{margin-top:3rem}.project-page .project-gallery>h2{color:#172033;font-size:1.5rem;margin:0 0 1.5rem}.project-page .project-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:start}.project-page .project-media-card{min-width:0;overflow:hidden;border:1px solid #e2e8f0;border-radius:.9rem;background:#f8fafc;box-shadow:0 4px 16px #0f172a0a}.project-page .project-media figure{margin:0;padding:1rem;max-width:100%}.project-page .project-media-caption{margin:0;padding:1rem 1.25rem;border-top:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}@media (max-width: 700px){.project-page .project-heading,.project-page .project-overview{flex-direction:column}.project-page .project-logo{width:min(100%,300px);flex-basis:auto}.project-page .project-detail-group{grid-template-columns:1fr;gap:.75rem}.project-page .project-media{grid-template-columns:1fr}}
