.filters-section{padding:32px 0}.filters-carousel{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:0 4px 24px var(--shadow);border-radius:16px;margin-bottom:32px;padding:24px}.filters-carousel-header{justify-content:center;align-items:center;gap:16px;display:flex}.carousel-nav-btn{border:2px solid var(--card-border);background:var(--bg-color);width:40px;height:40px;color:var(--text-color);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;transition:all .2s;display:flex}.carousel-nav-btn:hover{border-color:var(--logo-accent);color:var(--logo-accent);transform:scale(1.05)}.filter-categories{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.category-tab{border:2px solid var(--card-border);color:var(--text-color);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s}.category-tab:hover{border-color:var(--logo-accent);color:var(--logo-accent)}.category-tab.active{background:var(--logo-accent);border-color:var(--logo-accent);color:#fff}.labs-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;max-width:1200px;margin:0 auto;display:grid}.lab-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:0 4px 16px var(--shadow);border-radius:16px;flex-direction:column;gap:16px;padding:24px;transition:all .3s;display:flex}.lab-card:hover{box-shadow:0 8px 32px var(--shadow);border-color:var(--logo-accent);transform:translateY(-4px)}.lab-card-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.lab-icon{background:linear-gradient(135deg, var(--logo-accent), var(--accent-glow));color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;display:flex}.lab-status{align-items:center;display:flex}.lab-badge{white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:600;display:flex}.badge-completed{background:var(--badge-easy-bg);color:var(--badge-easy-text);border:1px solid var(--badge-easy-bg)}.badge-progress{background:var(--badge-medium-bg);color:var(--badge-medium-text);border:1px solid var(--badge-medium-bg)}.badge-planned{background:var(--badge-hard-bg);color:var(--badge-hard-text);border:1px solid var(--badge-hard-bg)}.lab-title{color:var(--text-color);margin:0;font-size:1.1rem;font-weight:700;line-height:1.4}.lab-description{color:var(--text-secondary);flex-grow:1;margin:0;font-size:.9rem;line-height:1.6}.lab-meta{flex-wrap:wrap;gap:8px;display:flex}.lab-category,.lab-type{border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:500}.lab-category{color:var(--logo-accent);background:#0891b21a;border:1px solid #0891b233}.lab-type{color:#8b5cf6;background:#8b5cf61a;border:1px solid #8b5cf633}.lab-tech{flex-wrap:wrap;gap:8px;display:flex}.lab-tech-item{background:var(--bg-color);border:1px solid var(--card-border);color:var(--text-color);border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:500}.lab-progress{align-items:center;gap:12px;display:flex}.lab-progress-bar{background:var(--progress-bg);border-radius:4px;flex:1;height:8px;overflow:hidden}.lab-progress-fill{background:linear-gradient(90deg, var(--logo-accent), var(--accent-glow));border-radius:4px;height:100%;transition:width .6s ease-out}.lab-progress-text{color:var(--logo-accent);text-align:right;min-width:40px;font-size:.85rem;font-weight:600}.lab-actions{gap:12px;margin-top:8px;display:flex}.lab-github{background:var(--bg-color);border:2px solid var(--card-border);color:var(--text-color);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.lab-github:hover{border-color:var(--logo-accent);color:var(--logo-accent);background:#0891b20d}.lab-details-link{color:var(--logo-accent);background:linear-gradient(135deg,#38bdf81a 0%,#0ea5e91a 100%);border:1px solid #38bdf84d;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 8px #38bdf81a}.lab-details-link:hover{background:linear-gradient(135deg,#38bdf833 0%,#0ea5e933 100%);border-color:#38bdf880;transform:translateY(-2px);box-shadow:0 4px 16px #38bdf833}.lab-details-link i{transition:transform .3s}.lab-details-link:hover i{transform:translate(4px)}.lab-empty-state{text-align:center;background:var(--card-bg);border:2px dashed var(--card-border);border-radius:16px;padding:60px 20px}.lab-empty-state i{color:var(--text-secondary);margin-bottom:16px;font-size:3rem;display:block}.lab-empty-state h3{color:var(--text-color);margin:0 0 8px;font-size:1.3rem;font-weight:700}.lab-empty-state p{color:var(--text-secondary);margin:0;font-size:.95rem}@media (max-width:1024px){.labs-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.filters-section{padding:24px 16px}.filters-carousel{margin-bottom:24px;padding:16px}.filters-carousel-header{flex-direction:column;gap:8px}.carousel-nav-btn{width:36px;height:36px;font-size:.85rem}.filter-categories{justify-content:center;gap:6px}.category-tab{padding:6px 12px;font-size:.8rem}.labs-grid{grid-template-columns:1fr;gap:16px}.lab-card{padding:16px}.lab-icon{width:48px;height:48px;font-size:1.3rem}.lab-card-header{gap:12px}.lab-actions{flex-direction:column}.lab-github,.lab-details-link{width:100%}}@media (max-width:480px){.filters-carousel{padding:12px}.carousel-nav-btn{width:32px;height:32px;font-size:.75rem}.category-tab{padding:5px 10px;font-size:.75rem}.lab-card{padding:12px}.lab-icon{width:40px;height:40px;font-size:1.1rem}.lab-title{font-size:1rem}.lab-description{font-size:.85rem}.lab-badge{padding:4px 8px;font-size:.7rem}.lab-tech-item{padding:3px 8px;font-size:.7rem}}
