.project-header{display:flex;flex-direction:column;gap:.3rem}.project-title{font-weight:700;font-size:1.1rem;line-height:1.3;color:var(--text)}.project-techs{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:.3rem;margin-bottom:.3rem}.project-tech{display:inline-block;font-size:.75rem;color:var(--text);background:var(--card_BG);border:1px solid var(--text);padding:.25rem .5rem;border-radius:6px}.techs-more{font-size:.75rem;color:var(--link);cursor:pointer;padding:.2rem .2rem}.techs-more:hover{text-decoration:underline}.project-preview{display:flex;margin-top:.2rem;margin-bottom:.2rem;justify-content:center;align-items:center;overflow:hidden;border-radius:6px;background:var(--HTML_BG)}.project-preview img{width:100%;height:auto;object-fit:contain;max-height:200px}.project-link{display:block;font-size:.8rem;text-align:center;padding:.2rem .4rem;background:var(--button_BG);border:1px solid var(--button_border);border-radius:4px;color:var(--text);text-decoration:none}.project-link:hover{background:var(--btn-hover_BG);color:var(--btn-hover_color)}.project-description{font-size:.9rem;line-height:1.4}.project-description.justify{text-align:justify;min-height:2.8rem}.project-description.justify>span.i18n{word-wrap:break-word}.project-description.justify .see-more{color:var(--link);font-weight:700;cursor:pointer}.project-description.justify .see-more:hover{text-decoration:underline}.project-description.justify.expanded>span.i18n{white-space:normal}.project-description.justify.expanded .see-more{display:none}.project-meta{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--text);margin-top:.3rem}.project-date{opacity:.7}.tech-search-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:.5rem 0}#tech-search{width:100%;max-width:18rem;box-sizing:border-box;padding:.5rem .75rem;font-size:.9rem;border:2px solid var(--button_border);border-radius:6px;background:var(--HTML_BG);color:var(--text);outline:0;transition:border-color .2s;appearance:auto}#tech-search:focus{border-color:var(--nav-a-hover_BG)}#tech-search::placeholder{color:var(--text);opacity:.5}#tech-suggestions{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:100%;max-width:18rem;max-height:12rem;overflow-y:auto;background:var(--card_BG);border:1px solid var(--button_border);border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 8px rgba(0,0,0,.15);display:none;z-index:100;scrollbar-width:thin;scrollbar-color:var(--aqua) var(--card_BG)}#tech-suggestions::-webkit-scrollbar{width:12px}#tech-suggestions::-webkit-scrollbar-track{background:var(--card_BG);border-radius:0 0 6px 0}#tech-suggestions::-webkit-scrollbar-thumb{background:var(--aqua);border-radius:6px;border:3px solid var(--card_BG)}#tech-suggestions::-webkit-scrollbar-thumb:hover{background:var(--a-href-hover)}.tech-suggestion{padding:.45rem .75rem;font-size:.85rem;color:var(--text);cursor:pointer;transition:background-color .15s;border-bottom:1px solid var(--button_border)}.tech-suggestion:last-child{border-bottom:none}.tech-suggestion:nth-child(2n){background:var(--button_BG)}.tech-suggestion:hover{background:var(--nav-a-hover_BG);color:var(--nav-a-hover-span_color)}#selected-techs{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;min-height:1.5rem}.tech-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--text);background:var(--nav-a-current_BG);border:1px solid var(--button_border);padding:.2rem .5rem;border-radius:12px;animation:chipIn .2s ease}@keyframes chipIn{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.tech-chip-remove{cursor:pointer;font-size:.7rem;opacity:.7;padding:0 .15rem;transition:opacity .15s}.tech-chip-remove:hover{opacity:1}