.content-card-index .content-card,.content-card-index .skill-card,.content-card-index .project-card,.content-card-index .hobby-card{background:var(--surface-panel);border:1px solid var(--border-soft);border-radius:var(--radius-xl);transition:transform var(--motion-fast), box-shadow var(--motion-fast), border-color var(--motion-fast);color:var(--color-text)}.content-card-index .content-card:hover,.content-card-index .content-card:focus-within,.content-card-index .skill-card:hover,.content-card-index .skill-card:focus-within,.content-card-index .project-card:hover,.content-card-index .project-card:focus-within,.content-card-index .hobby-card:hover,.content-card-index .hobby-card:focus-within{border-color:var(--border-interactive);box-shadow:var(--shadow-card);transform:translateY(-3px)}.content-card-index .content-card .card-title,.content-card-index .skill-card .card-title,.content-card-index .project-card .card-title,.content-card-index .hobby-card .card-title{color:var(--color-text);margin-bottom:.25rem;font-weight:600;line-height:1.1}.content-card-index .content-card .card-text,.content-card-index .skill-card .card-text,.content-card-index .project-card .card-text,.content-card-index .hobby-card .card-text{color:var(--color-text-muted);line-height:1.7}.content-card-index .content-card .skill-icon,.content-card-index .content-card .card-icon,.content-card-index .skill-card .skill-icon,.content-card-index .skill-card .card-icon,.content-card-index .project-card .skill-icon,.content-card-index .project-card .card-icon,.content-card-index .hobby-card .skill-icon,.content-card-index .hobby-card .card-icon{opacity:.9;font-size:1.25rem}.content-card-index .content-card .level-pill,.content-card-index .skill-card .level-pill,.content-card-index .project-card .level-pill,.content-card-index .hobby-card .level-pill{border-radius:var(--radius-md);color:var(--color-text);white-space:nowrap;background:#ccd6f61f;border:1px solid #ccd6f666;padding:.15rem .5rem;font-size:.825rem;display:inline-block}.content-card-index .content-card .badge,.content-card-index .skill-card .badge,.content-card-index .project-card .badge,.content-card-index .hobby-card .badge{transition:transform var(--motion-fast), border-color var(--motion-fast), background-color var(--motion-fast), box-shadow var(--motion-fast), color var(--motion-fast);background:#ffffff0f;border:1px solid #ffffff14;font-weight:500}.content-card-index .content-card .badge:hover,.content-card-index .skill-card .badge:hover,.content-card-index .project-card .badge:hover,.content-card-index .hobby-card .badge:hover{background:#ffffff1f}.content-card-index .content-card .relation-badge,.content-card-index .content-card .relation-badges-toggle,.content-card-index .skill-card .relation-badge,.content-card-index .skill-card .relation-badges-toggle,.content-card-index .project-card .relation-badge,.content-card-index .project-card .relation-badges-toggle,.content-card-index .hobby-card .relation-badge,.content-card-index .hobby-card .relation-badges-toggle{align-items:center;min-height:1.65rem;display:inline-flex}.content-card-index .content-card .relation-badges,.content-card-index .skill-card .relation-badges,.content-card-index .project-card .relation-badges,.content-card-index .hobby-card .relation-badges{align-content:flex-start;min-height:3.8rem}.content-card-index .content-card .relation-badges-toggle,.content-card-index .skill-card .relation-badges-toggle,.content-card-index .project-card .relation-badges-toggle,.content-card-index .hobby-card .relation-badges-toggle{cursor:pointer;color:var(--color-accent);-webkit-user-select:none;user-select:none;white-space:nowrap}.content-card-index .content-card .relation-badges-toggle:focus-visible,.content-card-index .skill-card .relation-badges-toggle:focus-visible,.content-card-index .project-card .relation-badges-toggle:focus-visible,.content-card-index .hobby-card .relation-badges-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.content-card-index .content-card .card-media,.content-card-index .skill-card .card-media,.content-card-index .project-card .card-media,.content-card-index .hobby-card .card-media{aspect-ratio:16/9;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);background:var(--color-surface-deep);border-bottom:1px solid var(--border-soft);overflow:hidden}.content-card-index .content-card .card-media .card-img,.content-card-index .skill-card .card-media .card-img,.content-card-index .project-card .card-media .card-img,.content-card-index .hobby-card .card-media .card-img{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-medium);display:block;transform:scale(1.001)}.content-card-index .content-card .card-media:hover .card-img,.content-card-index .content-card .card-media:focus-within .card-img,.content-card-index .skill-card .card-media:hover .card-img,.content-card-index .skill-card .card-media:focus-within .card-img,.content-card-index .project-card .card-media:hover .card-img,.content-card-index .project-card .card-media:focus-within .card-img,.content-card-index .hobby-card .card-media:hover .card-img,.content-card-index .hobby-card .card-media:focus-within .card-img{transform:scale(1.03)}.content-card-index .content-card .card-media--contain,.content-card-index .skill-card .card-media--contain,.content-card-index .project-card .card-media--contain,.content-card-index .hobby-card .card-media--contain{background:radial-gradient(circle at center, #65b7ff29, transparent 68%), var(--color-surface-deep)}.content-card-index .content-card .card-media--contain .card-img--contain,.content-card-index .skill-card .card-media--contain .card-img--contain,.content-card-index .project-card .card-media--contain .card-img--contain,.content-card-index .hobby-card .card-media--contain .card-img--contain{object-fit:contain;padding:clamp(.85rem,4vw,1.4rem)}.content-card-index .content-card:hover .card-img,.content-card-index .content-card:focus-within .card-img,.content-card-index .skill-card:hover .card-img,.content-card-index .skill-card:focus-within .card-img{transform:scale(1.03)}@media (prefers-reduced-motion:reduce){.content-card,.content-card img{transform:none!important}}.nav.portfolio-tabs{border-bottom:1px solid var(--border-soft);scrollbar-width:none;flex-wrap:nowrap;gap:.5rem;padding-bottom:.5rem;overflow-x:auto}.portfolio-tabs::-webkit-scrollbar{display:none}.portfolio-tabs .nav-link{background:var(--surface-panel);color:var(--color-text-muted);border:1px solid var(--border-soft);white-space:nowrap;border-bottom:none;border-radius:.75rem .75rem 0 0;padding:.6rem 1.1rem;transition:all .2s}.portfolio-tabs .nav-link:hover{color:var(--color-text);background:#ffffff0d}.portfolio-tabs .nav-link:focus-visible{border-color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:.15rem;box-shadow:0 0 0 .25rem var(--focus-ring)}.portfolio-tabs .nav-link:disabled,.portfolio-tabs .nav-link[aria-disabled=true]{cursor:not-allowed;color:var(--color-text-subtle);opacity:.58}.portfolio-tabs .nav-link.active{background:var(--surface-control-focus);color:var(--color-text);border-color:#ccd6f673;border-bottom:1px solid var(--surface-panel);box-shadow:inset 0 -2px 6px #00000040}.collections-page .tab-content{touch-action:pan-y;min-height:300px}.collections-page .collection-pane--wide{padding-inline:0}.collections-page .tab-pane{will-change:opacity, transform;transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1);transform:translateY(.65rem)scale(.995)}.collections-page .tab-pane.show.active{opacity:1;transform:translateY(0)scale(1)}.collections-page .tab-pane.fade{opacity:0}.collections-page .tab-pane.fade:not(.show){transition-duration:0s}.collections-page .tab-pane.fade.show{transition-duration:.5s}.collections-page .tab-pane[aria-busy=true]{cursor:progress}.tab-skeleton{border:1px solid var(--border-soft);background:#ffffff09;min-height:260px;overflow:hidden}.tab-skeleton__image,.tab-skeleton__line{background:#ccd6f617;position:relative;overflow:hidden}.tab-skeleton__image{height:150px}.tab-skeleton__line{border-radius:999px;height:.75rem;margin-bottom:.75rem}.tab-skeleton__line--title{width:65%;height:1.15rem}.tab-skeleton__line--short{width:45%}.tab-skeleton__image:after,.tab-skeleton__line:after{content:"";background:linear-gradient(90deg,#0000,#ccd6f61f,#0000);animation:1.4s infinite tab-skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.tab-load-error{color:var(--color-text-muted)}@keyframes tab-skeleton-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.collections-page .tab-pane,.tab-skeleton__image:after,.tab-skeleton__line:after{transition:none;animation:none}}.collection-filters{border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface-control) 72%, transparent);padding:.9rem}.collection-filters__header{gap:.75rem;margin-bottom:.9rem;display:grid}.collection-filters__reset{justify-self:stretch}.collection-filter-skills{gap:.4rem;display:grid}.collection-filter-option{text-align:left;white-space:normal;border-radius:.55rem;justify-content:space-between;align-items:center;gap:.65rem;width:100%;min-width:0;padding:.42rem .6rem;font-size:.8rem;line-height:1.2;display:flex}.collection-filter-option__count{background:color-mix(in srgb, var(--color-bg) 45%, transparent);text-align:center;border-radius:999px;flex:none;min-width:1.35rem;padding:.1rem .35rem}.collection-filter-match{gap:.5rem;display:grid}.project-collection-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem;display:grid;position:relative}.project-collection-layout:after{z-index:3;background:linear-gradient(90deg, transparent, var(--color-accent), transparent);content:"";opacity:0;pointer-events:none;border-radius:999px;height:2px;position:absolute;top:0;left:0;right:0;transform:translate(-35%)}.project-collection-layout.is-updating:after{opacity:1;animation:.85s ease-in-out infinite collection-filter-progress}.project-collection-layout.is-updating .project-collection-results{opacity:.62}.project-collection-sidebar{min-width:0}.collection-tabs-toolbar{align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.collection-tabs-toolbar__tabs{flex:0 auto;margin-bottom:0}.collection-tabs-filter-toggle{flex:none;align-items:center;gap:.55rem;display:none}.project-filter-disclosure{min-width:0}.project-filter-disclosure[open] .project-filter-disclosure__chevron{transform:rotate(180deg)}.project-filter-disclosure__toggle{border:1px solid var(--color-accent);min-height:2.75rem;color:var(--color-accent);cursor:pointer;transition:color var(--motion-fast), background-color var(--motion-fast);border-radius:.35rem;align-items:center;gap:.65rem;padding:.45rem .8rem;list-style:none;display:inline-flex}.project-filter-disclosure__toggle:hover,.project-filter-disclosure__toggle:focus-visible{background:var(--color-accent);color:var(--color-bg)}.project-filter-disclosure__toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:.2rem}.project-filter-disclosure__toggle::-webkit-details-marker{display:none}.project-filter-disclosure__chevron{transition:transform var(--motion-fast);font-size:.75rem}.project-filter-disclosure__count{background:var(--color-action);min-width:1.4rem;min-height:1.4rem;color:var(--color-white);border-radius:999px;place-items:center;padding-inline:.35rem;font-size:.75rem;line-height:1;display:inline-grid}.project-filter-disclosure .collection-filters{margin-top:.65rem}.collection-results-panel{border:1px solid var(--border-soft);border-radius:var(--radius-xl);background:var(--surface-panel);width:100%;min-width:0;margin-inline:auto;overflow:clip}.collection-results-panel--aligned{margin-inline:auto}.project-collection-results{transition:opacity var(--motion-fast)}.collection-filter-pill{border:1px solid var(--border-interactive);transition:transform var(--motion-fast), background-color var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast)}.collection-filter-pill:hover,.collection-filter-pill:focus-visible{border-color:var(--color-accent);color:var(--color-text);transform:translateY(-1px)}.collection-filter-pill.is-selected{border-color:var(--color-accent);background:var(--color-action);color:var(--color-white)}@media (width<=991.98px){.project-collection-sidebar{position:static}.collection-filter-skills{grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes collection-filter-progress{0%{transform:translate(-35%)}to{transform:translate(35%)}}@media (width>=992px){.js .collections-page[data-active-tab=projects] .collection-tabs-filter-toggle{display:inline-flex}.project-collection-sidebar{z-index:8;filter:drop-shadow(0 1rem 1.4rem #00000052);width:min(13.5rem,100vw - 2rem);position:absolute;top:0;left:0}.js .project-filter-disclosure__toggle{display:none}.project-collection-sidebar .collection-filters{border-radius:0 var(--radius-lg) var(--radius-lg) 0;margin-top:0}}@media (width>=1760px){.project-collection-sidebar{left:auto;right:calc(100% + 1rem)}}
