.pe-hero[data-astro-cid-ggruhdqw],.pe-quote[data-astro-cid-ggruhdqw],.pe-cta[data-astro-cid-ggruhdqw]{text-align:center;margin-bottom:2rem;padding:2.5rem 2rem}.pe-badge[data-astro-cid-ggruhdqw]{color:var(--border-cyan);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.pe-hero-title[data-astro-cid-ggruhdqw]{font-family:JetBrains Mono,monospace;font-size:clamp(1.5rem,4vw,2.2rem)}.pe-accent[data-astro-cid-ggruhdqw]{color:var(--border-cyan)}.pe-hero-desc[data-astro-cid-ggruhdqw]{opacity:.8;max-width:560px;margin:1rem auto 0}.pe-quote[data-astro-cid-ggruhdqw] blockquote[data-astro-cid-ggruhdqw]{opacity:.9;font-size:1.15rem;font-style:italic}.pe-eyebrow[data-astro-cid-ggruhdqw]{color:var(--border-cyan);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.pe-eyebrow[data-astro-cid-ggruhdqw].small{opacity:.8;font-size:.68rem}.pe-block[data-astro-cid-ggruhdqw]{margin:2.5rem 0}.pe-block[data-astro-cid-ggruhdqw] h3[data-astro-cid-ggruhdqw]{margin-bottom:1.25rem;font-family:JetBrains Mono,monospace;font-size:1.4rem}.pe-grid[data-astro-cid-ggruhdqw]{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1rem;display:grid}.pe-card[data-astro-cid-ggruhdqw]{padding:1.4rem}.pe-emoji[data-astro-cid-ggruhdqw]{margin-bottom:.5rem;font-size:1.6rem}.pe-card[data-astro-cid-ggruhdqw] h4[data-astro-cid-ggruhdqw]{margin:.4rem 0 .5rem;font-size:.95rem}.pe-card[data-astro-cid-ggruhdqw] p[data-astro-cid-ggruhdqw]{opacity:.75;font-size:.85rem;line-height:1.5}.pe-flow[data-astro-cid-ggruhdqw]{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;padding:2rem;display:flex}.pe-flow-step[data-astro-cid-ggruhdqw]{border:1px solid var(--border-cyan);text-align:center;background:#00ffcc14;border-radius:12px;min-width:120px;padding:.6rem 1.1rem}.pe-flow-id[data-astro-cid-ggruhdqw]{color:var(--border-cyan);font-family:JetBrains Mono,monospace;font-size:.85rem}.pe-flow-desc[data-astro-cid-ggruhdqw]{opacity:.6;font-size:.72rem}.pe-flow-arrow[data-astro-cid-ggruhdqw]{color:var(--accent-pink);font-size:1.2rem}.pe-code-grid[data-astro-cid-ggruhdqw]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;margin-top:1.25rem;display:grid}.pe-code[data-astro-cid-ggruhdqw]{opacity:.75;white-space:pre;font-family:JetBrains Mono,monospace;font-size:.8rem;line-height:1.7;overflow-x:auto}.connectors-tabs[data-astro-cid-ggruhdqw]{padding:0;overflow:hidden}.pe-tabs-row[data-astro-cid-ggruhdqw]{border-bottom:1px solid #0fc3;display:flex}.pe-tab[data-astro-cid-ggruhdqw]{color:#e0e0e080;cursor:pointer;background:0 0;border:none;flex:1;padding:1rem;font-size:.88rem;transition:all .2s}.pe-tab[data-astro-cid-ggruhdqw]:focus-visible{outline-offset:-4px;outline:2px solid #fff}.pe-tab[data-astro-cid-ggruhdqw].active{color:var(--border-cyan);box-shadow:inset 0 -2px 0 var(--border-cyan);background:#00ffcc14}.pe-tab-panel[data-astro-cid-ggruhdqw]{padding:1.75rem;display:none}.pe-tab-panel[data-astro-cid-ggruhdqw].active{display:block}.pe-tab-via[data-astro-cid-ggruhdqw]{opacity:.5;margin-bottom:.75rem;font-family:JetBrains Mono,monospace;font-size:.72rem}.pe-metric-list[data-astro-cid-ggruhdqw]{margin-top:.5rem;padding:0;list-style:none}.pe-metric-list[data-astro-cid-ggruhdqw] li[data-astro-cid-ggruhdqw]{opacity:.85;padding:.35rem 0;font-family:JetBrains Mono,monospace;font-size:.8rem}.pe-tech-grid[data-astro-cid-ggruhdqw]{flex-wrap:wrap;gap:.8rem;display:flex}.pe-tech-item[data-astro-cid-ggruhdqw]{flex:1;min-width:130px;padding:1rem}.pe-tech-name[data-astro-cid-ggruhdqw]{color:var(--border-cyan);font-family:JetBrains Mono,monospace;font-size:.85rem}.pe-tech-role[data-astro-cid-ggruhdqw]{opacity:.6;font-size:.75rem}.pe-security-item[data-astro-cid-ggruhdqw]{border-top:1px solid #00ffcc14;gap:1rem;padding:1rem 0;display:flex}.pe-security-item[data-astro-cid-ggruhdqw]:first-child{border-top:none}.pe-security-num[data-astro-cid-ggruhdqw]{border:1px solid var(--border-cyan);min-width:26px;height:26px;color:var(--border-cyan);background:#00ffcc1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:.72rem;display:flex}.pe-roadmap-grid[data-astro-cid-ggruhdqw]{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.pe-phase[data-astro-cid-ggruhdqw]{padding:1.2rem}.pe-phase[data-astro-cid-ggruhdqw] h4[data-astro-cid-ggruhdqw]{margin:.3rem 0 .75rem;font-size:.95rem}.pe-phase[data-astro-cid-ggruhdqw] ul[data-astro-cid-ggruhdqw]{opacity:.6;padding:0;font-size:.78rem;list-style:none}.pe-phase[data-astro-cid-ggruhdqw] li[data-astro-cid-ggruhdqw]{padding:.2rem 0}.project-detail{max-width:1000px;margin:0 auto;padding:2rem 1.5rem}.back-link a{color:#888;font-family:JetBrains Mono,monospace;font-size:.8rem;text-decoration:none}.back-link a:hover{color:#fff}.detail-header{margin:2rem 0 2.5rem}.status-row{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.status-badge{text-transform:uppercase;letter-spacing:.03em;color:#ccc;align-items:center;gap:.4rem;font-family:JetBrains Mono,monospace;font-size:.75rem;display:inline-flex}.status-badge .dot{background:var(--dot-color);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.project-type{color:#888;background:#ffffff0d;border-radius:20px;padding:.1rem .6rem;font-size:.7rem}.detail-header h1{letter-spacing:-.02em;margin:.5rem 0;font-size:2.8rem;font-weight:600}.description{color:#bbb;max-width:700px;font-size:1.15rem;line-height:1.5}.stats-group-title{color:#888;text-transform:uppercase;letter-spacing:.05em;margin:2rem 0 .75rem;font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:500}.stats-group-title:first-child{margin-top:0}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;display:grid}.metric-card{text-align:center;background:#111;border:1px solid #ffffff0f;border-radius:10px;padding:1rem}.metric-card .metric-icon{font-size:1.4rem;display:block}.metric-card .metric-value{color:#eee;margin:.2rem 0;font-family:JetBrains Mono,monospace;font-size:1.4rem;font-weight:600;display:block}.metric-card .metric-label{color:#888;text-transform:uppercase;letter-spacing:.03em;font-size:.65rem}.repo-meta{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.repo-badge{color:#aaa;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:20px;padding:.25rem .7rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.repo-badge-warn{color:#ff79c6;background:#ff79c60f;border-color:#ff79c64d}.lang-bar-wrapper{margin:1.5rem 0}.lang-bar-wrapper h4{color:#888;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;font-size:.8rem;font-weight:500}.lang-bar{background:#ffffff0a;border-radius:6px;height:8px;display:flex;overflow:hidden}.lang-segment{height:100%}.lang-legend{color:#aaa;flex-wrap:wrap;gap:.75rem;margin-top:.6rem;font-size:.75rem;display:flex}.lang-legend-item{align-items:center;gap:.35rem;display:inline-flex}.lang-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.topics-wrapper{margin:1rem 0}.topics-list{flex-wrap:wrap;gap:.4rem;display:flex}.topic-pill{color:#0ea5e9;background:#00ffcc0f;border:1px solid #00ffcc26;border-radius:20px;padding:.2rem .65rem;font-family:JetBrains Mono,monospace;font-size:.7rem}.last-commit{background:#ffffff05;border:1px solid #ffffff0d;border-radius:10px;align-items:center;gap:.75rem;margin:1rem 0 1.5rem;padding:.75rem 1rem;display:flex}.commit-icon{font-size:1.2rem}.commit-info{flex-direction:column;gap:.15rem;display:flex;overflow:hidden}.commit-info a{color:#eee;white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;text-decoration:none;overflow:hidden}.commit-info a:hover{color:#0ea5e9;text-decoration:underline}.commit-meta{color:#777;font-family:JetBrains Mono,monospace;font-size:.7rem}.stats-update-time{text-align:center;color:#666;margin-top:1.5rem;font-size:.8rem}.pagespeed-container{margin:0 0 3rem}.pagespeed-container h2{color:#0ea5e9;margin-bottom:1.25rem;font-family:JetBrains Mono,monospace;font-size:1.3rem}.pagespeed-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.25rem;display:grid}.gauge-card{text-align:center;background:#111;border:1px solid #ffffff0f;border-radius:12px;padding:1.25rem 1rem 1rem}.gauge-label{text-transform:uppercase;letter-spacing:.04em;color:#888;margin-bottom:.9rem;font-size:.7rem;display:block}.gauge{width:110px;height:58px;margin:0 auto;position:relative;overflow:hidden}.gauge:before{content:"";box-sizing:border-box;border:9px solid #ffffff0f;border-color:#ffffff0f #ffffff0f #0000 #0000;border-radius:50%;width:110px;height:110px;position:absolute;top:0;left:0;transform:rotate(-45deg)}.needle{transform-origin:bottom;background:#ff79c6;border-radius:2px;width:3px;height:50px;transition:transform .1s linear;position:absolute;bottom:0;left:50%;transform:rotate(-90deg)}.needle:after{content:"";background:#ff79c6;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.score{color:#eee;margin-top:.6rem;font-family:JetBrains Mono,monospace;font-size:1.4rem;font-weight:600}.vitals-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem;margin-top:1.5rem;display:grid}.vital-chip{background:#ffffff05;border:1px solid #ffffff0d;border-left:3px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem .5rem;display:flex}.vital-value{color:#eee;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:600}.vital-label{color:#888;text-align:center;font-size:.65rem;line-height:1.2}.vital-good{border-left-color:#50fa7b}.vital-mid{border-left-color:#eab308}.vital-poor{border-left-color:#ef4444}.detail-body{background:#111;border:1px solid #ffffff0f;border-radius:10px;padding:1.5rem}.tech-tags{flex-wrap:wrap;gap:.4rem;margin:1rem 0;display:flex}.tag{color:#aaa;letter-spacing:.02em;background:#ffffff0d;border:1px solid #ffffff0a;border-radius:12px;padding:.1rem .5rem;font-size:.65rem}.features{margin:1.5rem 0;padding:0;list-style:none}.features li{border-bottom:1px solid #ffffff0a;padding:.4rem 0}.action-links{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.btn{color:#aaa;background:0 0;border:1px solid #ffffff1a;border-radius:20px;padding:.5rem 1.2rem;font-family:JetBrains Mono,monospace;font-size:.8rem;text-decoration:none;transition:all .2s}.btn:hover{color:#fff;border-color:#ffffff4d}.btn.primary{color:#0a0a0a;background:#0ea5e9;border-color:#0ea5e9}.btn.primary:hover{background:#38bdf8;border-color:#38bdf8}
