/* KAHA catalog and shared KAHA heart styling; do not override TN-DLIB. */
.kaha-catalog-card { display:flex;flex-direction:column;height:100%; }
.kaha-catalog-card .course-banner { display:block;flex-shrink:0; }
.kaha-catalog-card .course-body { display:flex;flex-direction:column;flex:1;min-width:0; }
.kaha-card-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px; }
.kaha-card-heading .meta-row { flex:1;min-width:0;margin:0; }
:is(.kaha-card-heading .cart-btn.wishlist, .detail-wishlist.kaha-course-heart) { position:static;flex:0 0 44px;width:44px;height:44px;margin:0;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:12px;background:transparent;color:#a18b7a;box-shadow:none;text-shadow:none; }
:is(.kaha-card-heading .cart-btn.wishlist, .detail-wishlist.kaha-course-heart) svg { width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round; }
:is(.kaha-card-heading .cart-btn.wishlist, .detail-wishlist.kaha-course-heart).act { color:#f04457; }
:is(.kaha-card-heading .cart-btn.wishlist, .detail-wishlist.kaha-course-heart).act svg { fill:currentColor; }
:is(.kaha-card-heading .cart-btn.wishlist, .detail-wishlist.kaha-course-heart):hover { background:#fff1f3;border-color:transparent; }
.kaha-catalog-card .course-title a { color:inherit;text-decoration:none; }
.kaha-catalog-card .course-footer { margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px; }
.kaha-catalog-card .price-box { flex:1 0 auto;min-width:0;max-width:100%; }
.kaha-catalog-card .current-price { font-size:18px;line-height:1.4;white-space:nowrap; }
.kaha-catalog-card .discount { display:inline-block; }
.kaha-card-action { display:inline-flex;justify-content:center;align-items:center;justify-self:end;flex:0 0 auto;margin-left:auto;white-space:nowrap;min-height:44px;max-width:none;padding:10px;border:1px solid transparent;border-radius:12px;background:#205dc1;color:#fff;font:inherit;font-size:12px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer; }
/* One role palette for KAHA home and purchase actions on detail pages. */
:is(.kaha-card-action.is-register, .kaha-card-action.is-soon, .kaha-course-purchase .purchase-actions .btn-primary) { --kaha-action-ink:#b34d25;--kaha-action-bg:#fff3ec;--kaha-action-line:#f3d7c8; }
:is(.kaha-card-action.is-learning, .kaha-course-purchase .btn-go-learning) { --kaha-action-ink:#245bb5;--kaha-action-bg:#eef4ff;--kaha-action-line:#ccdcf5; }
:is(.kaha-card-action.is-pending, .kaha-course-purchase .btn-course-pending) { --kaha-action-ink:#95600f;--kaha-action-bg:#fff8e9;--kaha-action-line:#edddba; }
:is(.kaha-card-action.is-upcoming, .kaha-card-action.is-completed, .kaha-card-action.is-expired, .kaha-course-purchase .btn-course-expired, .kaha-course-purchase .btn-go-learning.disabled) { --kaha-action-ink:#667085;--kaha-action-bg:#f5f6f8;--kaha-action-line:#e0e4ea; }
:is(.kaha-card-action, .kaha-course-purchase .purchase-actions .btn-primary, .kaha-course-purchase .btn-go-learning, .kaha-course-purchase .btn-course-expired, .kaha-course-purchase .btn-course-pending) {
 color:var(--kaha-action-ink);background:var(--kaha-action-bg);border:1px solid var(--kaha-action-line);box-shadow:none;opacity:1;
}
:is(.kaha-card-action, .kaha-course-purchase .purchase-actions .btn-primary, .kaha-course-purchase .btn-go-learning, .kaha-course-purchase .btn-course-expired, .kaha-course-purchase .btn-course-pending):hover {
 color:var(--kaha-action-ink);background:var(--kaha-action-bg);border-color:var(--kaha-action-ink);box-shadow:none;transform:none;opacity:1;text-decoration:none;
}
.kaha-course-purchase .btn-go-learning.disabled { color:var(--kaha-action-ink)!important;background:var(--kaha-action-bg)!important; }
.kaha-course-purchase .btn-course-expired .learn-on,.kaha-course-purchase .btn-course-pending .pending-text { color:inherit; }
.kaha-card-action:disabled { cursor:default;opacity:1; }
.kaha-card-action:focus-visible,.kaha-card-heading .cart-btn:focus-visible,.kaha-catalog-card .course-title a:focus-visible { outline:3px solid #8db6f9;outline-offset:3px; }
@media(max-width:575px) {
 .kaha-catalog-card .current-price { font-size:20px; }
 .kaha-card-action { font-size:13px; }
}
@media(max-width:380px) {
 .kaha-catalog-card .price-box { flex-basis:100%; }
 .kaha-card-action { width:100%;max-width:none; }
}

.detail-wishlist.kaha-course-heart:focus-visible { outline:3px solid #8db6f9;outline-offset:3px; }

/* Retain the original prominent colors for registration and approval roles. */
:is(.kaha-card-action.is-register, .kaha-card-action.is-soon, .kaha-course-purchase .purchase-actions .btn-primary),
:is(.kaha-card-action.is-register, .kaha-card-action.is-soon, .kaha-course-purchase .purchase-actions .btn-primary):hover {
 color:#fff;background:linear-gradient(135deg,#ff7a3d,#ff5a2a);border-color:transparent;
}
:is(.kaha-catalog-card .kaha-card-action.is-pending, .kaha-course-purchase .btn-course-pending),
:is(.kaha-catalog-card .kaha-card-action.is-pending, .kaha-course-purchase .btn-course-pending):hover {
 color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-color:transparent;
}
