.filter-bar-exp[data-v-38b22d91]{display:flex;flex-direction:column;gap:12px;width:100%}@media(min-width:768px){.filter-bar-exp[data-v-38b22d91]{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px}}.filter-search-wrap-exp[data-v-38b22d91]{position:relative;flex:1 1 240px;min-width:200px}.filter-search-icon-exp[data-v-38b22d91]{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--color-on-surface-variant, #e6bdb7);pointer-events:none}.filter-search-input-exp[data-v-38b22d91]{width:100%;background:var(--color-surface-container, #201f1f);border:1px solid var(--color-outline-variant, #5c403b);border-radius:0;padding:12px 14px 12px 42px;font-size:14px;font-weight:500;letter-spacing:.05em;color:var(--color-on-surface, #e5e2e1);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.filter-search-input-exp[data-v-38b22d91]::-moz-placeholder{color:var(--color-on-surface-variant, #e6bdb7);opacity:.6}.filter-search-input-exp[data-v-38b22d91]::placeholder{color:var(--color-on-surface-variant, #e6bdb7);opacity:.6}.filter-search-input-exp[data-v-38b22d91]:focus{border-color:var(--color-primary-container, #b30000);box-shadow:0 0 0 2px #b3000026}.filter-dropdown-wrap-exp[data-v-38b22d91]{position:relative;flex:0 0 auto}.filter-trigger-exp[data-v-38b22d91]{display:inline-flex;align-items:center;gap:8px;background:var(--color-surface-container, #201f1f);border:1px solid var(--color-outline-variant, #5c403b);border-radius:0;padding:12px 14px;font-size:14px;font-weight:600;letter-spacing:.05em;color:var(--color-on-surface, #e5e2e1);cursor:pointer;transition:border-color .2s ease,color .2s ease;white-space:nowrap}.filter-trigger-exp[data-v-38b22d91]:hover{border-color:var(--color-primary, #ffb4a8)}.filter-trigger-exp.is-active-exp[data-v-38b22d91]{border-color:var(--color-primary-container, #b30000);color:var(--color-primary-container, #b30000)}.filter-trigger-label-exp[data-v-38b22d91]{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.filter-trigger-count-exp[data-v-38b22d91]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--color-primary-container, #b30000);color:var(--color-on-primary-container, #ffbeb4);font-size:11px;font-weight:700;border-radius:9999px}.filter-trigger-icon-exp[data-v-38b22d91]{font-size:18px}.filter-popover-exp[data-v-38b22d91]{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:200px;background:var(--color-surface-container-high, #2a2a2a);border:1px solid var(--color-outline-variant, #5c403b);box-shadow:0 8px 32px #00000080;padding:4px;display:flex;flex-direction:column}.filter-popover-inner-exp[data-v-38b22d91]{display:flex;flex-direction:column;max-height:280px;overflow-y:auto}.filter-checkbox-row-exp[data-v-38b22d91]{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:14px;color:var(--color-on-surface, #e5e2e1);cursor:pointer;transition:background .15s ease}.filter-checkbox-row-exp[data-v-38b22d91]:hover{background:var(--color-surface-container-highest, #353534)}.filter-checkbox-row-exp.is-checked-exp[data-v-38b22d91]{color:var(--color-primary-container, #b30000)}.filter-checkbox-exp[data-v-38b22d91]{width:16px;height:16px;accent-color:var(--color-primary-container, #b30000);cursor:pointer}.filter-checkbox-label-exp[data-v-38b22d91]{flex:1}.filter-option-exp[data-v-38b22d91]{display:block;width:100%;text-align:left;background:transparent;border:0;padding:10px 14px;font-size:14px;color:var(--color-on-surface, #e5e2e1);cursor:pointer;transition:background .15s ease,color .15s ease}.filter-option-exp[data-v-38b22d91]:hover{background:var(--color-surface-container-highest, #353534)}.filter-option-exp.is-selected-exp[data-v-38b22d91]{color:var(--color-primary-container, #b30000);font-weight:600}.filter-clear-link-exp[data-v-38b22d91]{display:block;width:100%;text-align:left;background:transparent;border:0;padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--color-on-surface-variant, #e6bdb7);cursor:pointer;border-bottom:1px solid var(--color-outline-variant, #5c403b)}.filter-clear-link-exp[data-v-38b22d91]:hover{color:var(--color-primary-container, #b30000)}@media(prefers-reduced-motion:reduce){.filter-search-input-exp[data-v-38b22d91],.filter-trigger-exp[data-v-38b22d91],.filter-checkbox-row-exp[data-v-38b22d91],.filter-option-exp[data-v-38b22d91],.filter-clear-link-exp[data-v-38b22d91]{transition:none}}.active-chips-exp[data-v-34da6286]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.active-chip-exp[data-v-34da6286]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:1px solid var(--color-primary-container, #b30000);color:var(--color-primary-container, #b30000);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:background .2s ease,color .2s ease}.active-chip-exp[data-v-34da6286]:hover{background:var(--color-primary-container, #b30000);color:var(--color-on-primary-container, #ffbeb4)}.active-chip-icon-exp[data-v-34da6286]{font-size:14px}.active-chip-clear-all-exp[data-v-34da6286]{display:inline-flex;align-items:center;padding:6px 10px;background:transparent;border:0;color:var(--color-on-surface-variant, #e6bdb7);font-size:11px;text-transform:uppercase;letter-spacing:.1em;text-decoration:underline;cursor:pointer;transition:color .2s ease}.active-chip-clear-all-exp[data-v-34da6286]:hover{color:var(--color-primary-container, #b30000)}@media(prefers-reduced-motion:reduce){.active-chip-exp[data-v-34da6286],.active-chip-clear-all-exp[data-v-34da6286]{transition:none}}.projects-grid-exp[data-v-432e728b]{display:grid;grid-template-columns:1fr;gap:24px}@media(min-width:768px){.projects-grid-exp[data-v-432e728b]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.projects-grid-exp[data-v-432e728b]{grid-template-columns:repeat(3,1fr)}}.project-card-exp[data-v-432e728b]{display:flex;flex-direction:column;background:var(--color-surface-container-low, #1c1b1b);border:1px solid var(--color-outline-variant, #5c403b);overflow:hidden;text-decoration:none;color:inherit;transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease}.project-card-exp[data-v-432e728b]:hover{border-color:var(--color-primary-container, #b30000);transform:translateY(-4px);box-shadow:0 12px 32px #0006}.project-card-thumb-exp[data-v-432e728b]{position:relative;aspect-ratio:16 / 9;background:var(--color-surface-container-lowest, #0e0e0e);overflow:hidden}.project-card-img-exp[data-v-432e728b]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.6;filter:grayscale(40%);transition:opacity .4s ease,filter .4s ease,transform .4s ease}.project-card-exp:hover .project-card-img-exp[data-v-432e728b]{opacity:1;filter:grayscale(0%);transform:scale(1.05)}.project-card-thumb-overlay-exp[data-v-432e728b]{position:absolute;inset:0;background:#b3000014;mix-blend-mode:color-burn;transition:opacity .3s ease;pointer-events:none}.project-card-exp:hover .project-card-thumb-overlay-exp[data-v-432e728b]{opacity:0}.project-source-badge-exp[data-v-432e728b]{position:absolute;top:12px;right:12px;padding:4px 10px;background:#131313e6;border:1px solid var(--color-primary-container, #b30000);color:var(--color-primary-container, #b30000);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;backdrop-filter:blur(8px)}.project-card-body-exp[data-v-432e728b]{padding:20px;display:flex;flex-direction:column;flex:1;gap:12px}.project-card-title-exp[data-v-432e728b]{font-size:20px;font-weight:700;line-height:1.2;color:var(--color-on-surface, #e5e2e1);transition:color .2s ease}.project-card-exp:hover .project-card-title-exp[data-v-432e728b]{color:var(--color-primary, #ffb4a8)}.project-card-summary-exp[data-v-432e728b]{font-size:14px;line-height:1.5;color:var(--color-on-surface-variant, #e6bdb7);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-card-meta-exp[data-v-432e728b]{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--color-outline-variant, #5c403b)}.project-card-role-exp[data-v-432e728b]{font-size:12px;color:var(--color-on-surface-variant, #e6bdb7)}.project-card-role-label-exp[data-v-432e728b]{color:var(--color-primary-container, #b30000);font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-right:4px}.project-card-langs-exp[data-v-432e728b]{display:flex;flex-wrap:wrap;gap:4px}.project-lang-badge-exp[data-v-432e728b]{display:inline-block;padding:3px 8px;background:var(--color-primary-container, #b30000);color:var(--color-on-primary-container, #ffbeb4);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.project-card-tech-exp[data-v-432e728b]{display:flex;flex-wrap:wrap;gap:4px}.project-tech-badge-exp[data-v-432e728b]{display:inline-block;padding:3px 8px;background:var(--color-surface-container-highest, #353534);color:var(--color-on-surface, #e5e2e1);font-size:10px;font-weight:500}.project-tech-more-exp[data-v-432e728b]{display:inline-block;padding:3px 8px;background:transparent;color:var(--color-on-surface-variant, #e6bdb7);font-size:10px;font-weight:600}.project-card-cta-exp[data-v-432e728b]{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary-container, #b30000)}.project-card-arrow-exp[data-v-432e728b]{font-size:16px;transition:transform .2s ease}.project-card-exp:hover .project-card-arrow-exp[data-v-432e728b]{transform:translate(4px)}@media(prefers-reduced-motion:reduce){.project-card-exp[data-v-432e728b],.project-card-img-exp[data-v-432e728b],.project-card-thumb-overlay-exp[data-v-432e728b],.project-card-title-exp[data-v-432e728b],.project-card-arrow-exp[data-v-432e728b]{transition:none}.project-card-exp[data-v-432e728b]:hover,.project-card-exp:hover .project-card-img-exp[data-v-432e728b]{transform:none}}.empty-state-exp[data-v-78b162d2]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 24px;background:var(--color-surface-container-low, #1c1b1b);border:1px dashed var(--color-outline-variant, #5c403b);gap:16px}.empty-state-icon-wrap-exp[data-v-78b162d2]{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-container, #201f1f);border:1px solid var(--color-outline-variant, #5c403b);border-radius:9999px}.empty-state-icon-exp[data-v-78b162d2]{font-size:40px;color:var(--color-on-surface-variant, #e6bdb7);opacity:.6}.empty-state-title-exp[data-v-78b162d2]{font-size:22px;font-weight:700;color:var(--color-on-surface, #e5e2e1)}.empty-state-body-exp[data-v-78b162d2]{font-size:14px;color:var(--color-on-surface-variant, #e6bdb7);max-width:400px}.empty-state-cta-exp[data-v-78b162d2]{margin-top:8px;padding:10px 20px;background:var(--color-primary-container, #b30000);color:var(--color-on-primary-container, #ffbeb4);border:0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:filter .2s ease,transform .15s ease}.empty-state-cta-exp[data-v-78b162d2]:hover{filter:brightness(1.12)}.empty-state-cta-exp[data-v-78b162d2]:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.empty-state-cta-exp[data-v-78b162d2]{transition:none}}.projects-list-exp[data-v-1a68ba37]{display:flex;flex-direction:column;gap:16px;width:100%}.projects-list-count-exp[data-v-1a68ba37]{display:inline-flex;align-items:baseline;gap:6px;padding-top:8px;border-top:1px solid var(--color-outline-variant, #5c403b);font-family:JetBrains Mono,monospace;font-size:12px;color:var(--color-on-surface-variant, #e6bdb7)}.projects-list-count-num-exp[data-v-1a68ba37]{font-size:18px;font-weight:700;color:var(--color-primary-container, #b30000)}.projects-list-count-label-exp[data-v-1a68ba37]{text-transform:uppercase;letter-spacing:.1em}.sr-only[data-v-1a68ba37]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
