/* ============ cursuri.css - catalog ============ */
.cat-hero { background: var(--cream, #f8f6f0); padding: 3.5rem 0 2rem; text-align: center; }
.cat-hero h1 { font-size: 2.2rem; margin: 0 0 0.75rem; }
.cat-hero p { font-size: 1.05rem; color: #5C5F66; max-width: 640px; margin: 0 auto; }

.cat-list { padding: 2.5rem 0 4rem; background: var(--cream, #f8f6f0); }
.courses-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.75rem; }
.cat-loading, .cat-empty { grid-column: 1 / -1; text-align: center; color: #8A8D94; padding: 3rem; }

.course-card { background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 6px 24px rgba(0,0,0,0.07); display: flex; flex-direction: column; transition: transform 0.15s, box-shadow 0.15s; }
.course-card:hover { transform: translateY(-3px); box-shadow: 0 12px 32px rgba(0,0,0,0.1); }
.course-cover { aspect-ratio: 3 / 4; background: #ece8dd center/contain no-repeat; position: relative; }
.course-cover-link { display: block; }
.course-details-link { display: inline-block; margin: 0.15rem 0 1rem; color: var(--orange); font-weight: 700; font-size: 0.88rem; text-decoration: none; }
.course-details-link:hover { color: var(--orange-dark); text-decoration: underline; }
.course-cover .owned-badge { position: absolute; top: 10px; left: 10px; background: #1e6b3a; color: #fff; font-size: 0.72rem; font-weight: 700; padding: 0.3rem 0.6rem; border-radius: 6px; }
.course-body { padding: 1.25rem; display: flex; flex-direction: column; flex: 1; }
.course-body h3 { font-size: 1.15rem; margin: 0 0 0.5rem; line-height: 1.35; }
.course-body p { font-size: 0.9rem; color: #5C5F66; margin: 0 0 1.25rem; flex: 1; }
.course-foot { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
.course-price { font-size: 1.2rem; font-weight: 800; color: #2A2C32; white-space: nowrap; }
.course-btn { padding: 0.6rem 1rem; border-radius: 8px; font-size: 0.88rem; font-weight: 700; text-decoration: none; text-align: center; white-space: nowrap; transition: background 0.15s; cursor: pointer; border: none; }
.course-btn.buy { background: var(--orange, #F47C32); color: #fff; }
.course-btn.buy:hover { background: var(--orange-dark, #E26818); }
.course-btn.access { background: #1e6b3a; color: #fff; }
.course-btn.access:hover { background: #185c31; }
.course-btn.login { background: #36383E; color: #fff; }
.course-btn.login:hover { background: #2A2C32; }

@media (max-width: 600px) {
  .courses-grid { grid-template-columns: 1fr; }
  .cat-hero h1 { font-size: 1.8rem; }
}
