.coding-catalogue[data-v-332b4375]{max-width:1200px}[dir] .coding-catalogue[data-v-332b4375]{padding:1.5rem;margin:0 auto}.catalogue-header[data-v-332b4375]{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}[dir] .catalogue-header[data-v-332b4375]{margin-bottom:2rem}.catalogue-title[data-v-332b4375]{font-size:1.75rem;font-weight:700;color:#2c2c2c}[dir] .catalogue-title[data-v-332b4375]{margin-bottom:.25rem}.catalogue-title .title-icon[data-v-332b4375]{font-size:1.5rem}.catalogue-subtitle[data-v-332b4375]{color:#888;font-size:.95rem}[dir] .catalogue-subtitle[data-v-332b4375]{margin:0}.stats-bar[data-v-332b4375]{display:flex;gap:.75rem;flex-wrap:wrap}.stat-chip[data-v-332b4375]{display:flex;align-items:center;gap:.35rem;color:#7367f0;font-size:.82rem;font-weight:600}[dir] .stat-chip[data-v-332b4375]{padding:.4rem .85rem;border-radius:20px;background:#e8e5fc}.empty-state[data-v-332b4375],.loading-state[data-v-332b4375]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem;color:#888}.empty-icon[data-v-332b4375]{font-size:3rem}.courses-grid[data-v-332b4375]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.course-card[data-v-332b4375]{overflow:hidden;transition:transform .2s,box-shadow .2s}[dir] .course-card[data-v-332b4375]{background:#fff;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.06);cursor:pointer}[dir] .course-card[data-v-332b4375]:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(115,103,240,.15)}.card-cover[data-v-332b4375]{height:120px;position:relative}[dir=ltr] .card-cover[data-v-332b4375]{background:linear-gradient(135deg,#7367f0,#9b8cf8)}[dir=rtl] .card-cover[data-v-332b4375]{background:linear-gradient(-135deg,#7367f0,#9b8cf8)}.cover-gradient[data-v-332b4375]{position:absolute;inset:0;display:flex;align-items:flex-end}[dir] .cover-gradient[data-v-332b4375]{padding:.75rem}.difficulty-badge[data-v-332b4375]{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}[dir] .difficulty-badge[data-v-332b4375]{padding:.2rem .65rem;border-radius:12px}.difficulty-badge.badge-beginner[data-v-332b4375]{color:#155724}[dir] .difficulty-badge.badge-beginner[data-v-332b4375]{background:#d4edda}.difficulty-badge.badge-intermediate[data-v-332b4375]{color:#856404}[dir] .difficulty-badge.badge-intermediate[data-v-332b4375]{background:#fff3cd}.difficulty-badge.badge-advanced[data-v-332b4375]{color:#721c24}[dir] .difficulty-badge.badge-advanced[data-v-332b4375]{background:#f8d7da}[dir] .card-body[data-v-332b4375]{padding:1rem 1.25rem 1.25rem}.card-title[data-v-332b4375]{font-size:1.05rem;font-weight:650;color:#2c2c2c}[dir] .card-title[data-v-332b4375]{margin-bottom:.35rem}.card-desc[data-v-332b4375]{font-size:.82rem;color:#888;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}[dir] .card-desc[data-v-332b4375]{margin-bottom:.6rem}.card-meta[data-v-332b4375]{display:flex;gap:1rem}[dir] .card-meta[data-v-332b4375]{margin-bottom:.6rem}.meta-item[data-v-332b4375]{display:flex;align-items:center;gap:.3rem;font-size:.78rem;color:#999}.card-tags[data-v-332b4375]{display:flex;gap:.35rem;flex-wrap:wrap}[dir] .card-tags[data-v-332b4375]{margin-bottom:.75rem}.tag[data-v-332b4375]{color:#7367f0;font-size:.7rem;font-weight:500}[dir] .tag[data-v-332b4375]{padding:.15rem .55rem;border-radius:10px;background:#e8e5fc}.progress-section[data-v-332b4375]{display:flex;align-items:center;gap:.5rem}.progress-bar-bg[data-v-332b4375]{flex:1;height:6px;overflow:hidden}[dir] .progress-bar-bg[data-v-332b4375]{border-radius:3px;background:#eee}.progress-bar-fill[data-v-332b4375]{height:100%;transition:width .4s}[dir] .progress-bar-fill[data-v-332b4375]{border-radius:3px}[dir=ltr] .progress-bar-fill[data-v-332b4375]{background:linear-gradient(90deg,#7367f0,#9b8cf8)}[dir=rtl] .progress-bar-fill[data-v-332b4375]{background:linear-gradient(-90deg,#7367f0,#9b8cf8)}.progress-label[data-v-332b4375]{font-size:.75rem;font-weight:600;color:#7367f0;min-width:32px}[dir=ltr] .progress-label[data-v-332b4375]{text-align:right}[dir=rtl] .progress-label[data-v-332b4375]{text-align:left}