.portfolio-shell{margin-top:1.5rem}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.portfolio-item{min-width:0}.markdown-body .portfolio-card{display:flex;width:100%;height:100%;padding:0;overflow:hidden;color:var(--default-text-color);font:inherit;text-align:left;background:var(--background-color);border:1px solid var(--border-color);border-radius:14px;box-shadow:var(--redefine-box-shadow-flat);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;flex-direction:column}.markdown-body .portfolio-card:hover{transform:translateY(-3px);border-color:var(--primary-color);box-shadow:var(--redefine-box-shadow-hover)}.markdown-body .portfolio-card:focus-visible{outline:3px solid var(--primary-color);outline-offset:3px}.portfolio-card-media{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--second-background-color)}.markdown-body .portfolio-card-media img{width:100%;height:100%;margin:0!important;object-fit:cover;border-radius:0;pointer-events:none;transition:transform .35s ease}.portfolio-card:hover .portfolio-card-media img{transform:scale(1.025)}.portfolio-status{display:inline-flex;align-items:center;padding:.25rem .6rem;color:var(--primary-color);font-size:.78rem;font-weight:600;line-height:1.2;background:var(--background-color-transparent-80);border:1px solid var(--primary-color);border-radius:999px}.portfolio-card-media>.portfolio-status{position:absolute;top:.75rem;right:.75rem;backdrop-filter:blur(10px)}.portfolio-card-body{display:flex;flex:1;flex-direction:column;gap:.75rem;padding:1rem}.portfolio-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.portfolio-card-heading i{margin-top:.25rem;color:var(--third-text-color);font-size:.8rem;transition:color .2s ease,transform .2s ease}.portfolio-card:hover .portfolio-card-heading i{color:var(--primary-color);transform:translate(2px,-2px)}.portfolio-card-title{color:var(--second-text-color);font-size:1.25rem;font-weight:700;line-height:1.3}.portfolio-card-summary{flex:1;color:var(--default-text-color);line-height:1.65}.portfolio-card-meta,.portfolio-dialog-meta{display:flex;flex-wrap:wrap;gap:.45rem}.portfolio-chip{display:inline-flex;align-items:center;padding:.2rem .55rem;color:var(--third-text-color);font-size:.78rem;line-height:1.4;background:var(--second-background-color);border:1px solid var(--border-color);border-radius:999px}.portfolio-card-event,.portfolio-dialog-event{color:var(--third-text-color);font-size:.9rem;line-height:1.5}.portfolio-award{display:inline-flex;align-items:center;gap:.4rem;width:fit-content;color:#b7791f;font-size:.9rem;font-weight:600}.portfolio-dialog{position:fixed;inset:0;width:min(900px,calc(100vw - 2rem));max-width:none;max-height:calc(100dvh - 2rem);margin:auto;padding:0;overflow:hidden;color:var(--default-text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.28)}.portfolio-dialog::backdrop{background:rgba(0,0,0,.58);backdrop-filter:blur(4px)}.portfolio-dialog-frame{display:flex;max-height:calc(100dvh - 2rem);flex-direction:column}.portfolio-dialog-header{z-index:1;display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:var(--background-color-transparent-80);border-bottom:1px solid var(--border-color);backdrop-filter:blur(14px)}.portfolio-dialog-header h2{margin:0!important;color:var(--second-text-color);font-size:1.35rem;line-height:1.3;border:0!important}.markdown-body .portfolio-dialog-close{display:inline-flex;width:2.5rem;height:2.5rem;padding:0;align-items:center;justify-content:center;color:var(--second-text-color);font:inherit;background:var(--second-background-color);border:1px solid var(--border-color);border-radius:50%;cursor:pointer;transition:color .2s ease,border-color .2s ease,transform .2s ease}.markdown-body .portfolio-dialog-close:hover{color:var(--primary-color);border-color:var(--primary-color);transform:rotate(4deg)}.markdown-body .portfolio-dialog-close:focus-visible{outline:3px solid var(--primary-color);outline-offset:2px}.portfolio-dialog-content{padding:1.25rem 1.5rem 2rem;overflow-y:auto;overscroll-behavior:contain}.markdown-body .portfolio-dialog-cover{width:100%;max-height:65vh;margin:0 0 1.25rem!important;object-fit:contain;background:var(--second-background-color);border-radius:12px;cursor:default;pointer-events:none}.portfolio-dialog-meta{margin-bottom:.75rem}.portfolio-dialog-meta>.portfolio-status{background:var(--second-background-color)}.portfolio-dialog-event{margin:.25rem 0 .75rem!important}.portfolio-dialog-section{margin-top:1.75rem}.portfolio-dialog-section>h2{margin:0 0 1rem!important;padding-bottom:.5rem;color:var(--second-text-color);font-size:1.3rem;border-bottom:1px solid var(--border-color)}.portfolio-dialog-section>:last-child{margin-bottom:0!important}.markdown-body .portfolio-dialog-section img{width:100%;max-height:75vh;margin:1rem 0 1.5rem!important;object-fit:contain;background:var(--second-background-color);border-radius:10px;cursor:default;pointer-events:none}.portfolio-links{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:.75rem 1rem;background:var(--second-background-color);border:1px solid var(--border-color);border-radius:10px}.portfolio-links-label{flex:0 0 auto;color:var(--third-text-color);font-size:.82rem;font-weight:600}.portfolio-link-list{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:.75rem}.portfolio-link-list .button{margin:0!important}html.portfolio-dialog-active,html.portfolio-dialog-active body{overflow:hidden}.portfolio-empty{color:var(--third-text-color);text-align:center}@media (max-width:720px){.portfolio-grid{grid-template-columns:minmax(0,1fr)}.portfolio-dialog{width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.portfolio-dialog-frame{height:100dvh;max-height:100dvh}.portfolio-dialog-header{padding:.8rem 1rem}.portfolio-dialog-content{padding:1rem 1rem 2rem}.portfolio-links{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){.portfolio-card,.portfolio-card-heading i,.portfolio-card-media img,.portfolio-dialog-close{transition:none!important}}