.proj{justify-content:flex-start}
.proj.right{justify-content:flex-end}
.panel{margin:0 7vw;max-width:480px;width:min(480px,86vw);
  background:linear-gradient(165deg,rgba(18,26,38,.78),rgba(8,12,18,.62));
  border:1px solid var(--line);backdrop-filter:blur(16px);
  padding:42px 44px 38px;position:relative}
.panel::before{content:'';position:absolute;top:0;left:0;width:64px;height:2px;
  background:linear-gradient(90deg,var(--cyan),transparent)}
.panel .idx{position:absolute;top:30px;right:36px;font-family:'JetBrains Mono',monospace;
  font-size:11px;letter-spacing:.2em;color:rgba(139,149,165,.55)}
.panel h3{font-family:'Archivo',sans-serif;font-weight:800;font-stretch:110%;
  font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.01em;text-transform:uppercase;line-height:1.05}
.panel p{margin-top:16px;color:var(--dim);font-size:.95rem;line-height:1.7}
.chips{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px}
.chip{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;
  color:var(--cyan);border:1px solid rgba(111,227,255,.25);padding:6px 10px;
  background:rgba(111,227,255,.05)}
.plinks{margin-top:28px;display:flex;gap:26px}
.plinks a{color:var(--ink);text-decoration:none;
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.22em;
  padding-bottom:5px;border-bottom:1px solid var(--line);transition:color .3s,border-color .3s}
.plinks a:hover{color:var(--cyan);border-color:var(--cyan)}
.plinks a::after{content:' ↗'}
