.project-title{font-size:2rem;font-weight:750;color:#e9edff;margin-bottom:.47em;margin-top:.1em;letter-spacing:.007em}.project-desc{font-size:1.07rem;color:#c5cdf0;line-height:1.48;margin-bottom:1.02em;font-weight:400}.language-bar{display:flex;width:100%;height:.75rem;margin:.2em 0 .22em;border-radius:7px;overflow:hidden;box-shadow:0 1px 4px #22243c5a}.language-bar-segment{height:100%;display:inline-block}.language-legend{display:flex;flex-wrap:wrap;gap:1.1em 1.9em;align-items:center;font-size:1.02rem;margin-top:.19em;margin-bottom:.53em;color:#b2c3df;font-weight:500}.language-legend-item{display:inline-flex;align-items:center;gap:.43em}.language-dot{display:inline-block;width:.92em;height:.92em;border-radius:50%;margin-right:.33em;border:2px solid #24263a;box-shadow:0 1px 3px #191a24cc;vertical-align:middle}.language-percent{color:#97e4fe;margin-left:.44em;font-size:.98em;letter-spacing:.01em}.tech-badges{display:flex;flex-wrap:wrap;gap:.48em .76em;margin-top:.98em;margin-bottom:.67em}.tech-badge{background:var(--color-border);color:var(--color-fg);font-size:.97rem;font-weight:560;padding:.4em .78em;border-radius:1.1em;display:flex;align-items:center;gap:.42em;transition:background .14s,color .14s}.tech-badge i,.tech-badge svg{font-size:1.05em;opacity:.9}.portfolio-content{background:var(--color-surface);color:var(--color-fg)}.portfolio-label-main{color:var(--color-accent)}.portfolio-link{color:var(--color-primary)}
