.recommendation-card-link{text-decoration:none;color:inherit;display:block}.recommendation-card{position:relative;background:#fff;border-radius:12px;padding:16px;min-width:280px;max-width:320px;box-shadow:0 2px 8px rgba(0,0,0,.08);border:1px solid #e5e7eb;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;flex-shrink:0}.recommendation-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.recommendation-card__explanation{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fef3c7,#fde68a);padding:6px 10px;border-radius:20px;margin-bottom:12px;font-size:12px;color:#92400e;font-weight:500}.recommendation-card__explanation-icon{font-size:14px}.recommendation-card__explanation-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.recommendation-card__type-badge{position:absolute;top:12px;right:12px;background:#f3f4f6;padding:4px 8px;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase;color:#374151}.recommendation-card__content{margin-top:8px}.recommendation-card__title{font-size:16px;font-weight:600;color:#111827;margin:0 0 6px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recommendation-card__occupation{font-size:13px;color:#2563eb;margin:0 0 8px;font-weight:500}.recommendation-card__description{font-size:13px;color:#4b5563;margin:0 0 12px;line-height:1.4}.recommendation-card__meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#4b5563}.recommendation-card__location,.recommendation-card__rate{display:flex;align-items:center;gap:4px}.recommendation-card__action{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:13px;color:#2563eb;font-weight:500;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}.recommendation-card:hover .recommendation-card__action{opacity:1;transform:translateY(0)}.recommendation-card--skeleton{min-height:180px}.skeleton-line{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px;margin-bottom:12px}.skeleton-line--short{width:40%;height:14px}.skeleton-line--medium{width:70%;height:14px}.skeleton-line--long{width:100%;height:18px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}[data-theme=dark] .recommendation-card{background:var(--layer3-section-bg);backdrop-filter:blur(24px);border-color:hsla(0,0%,100%,.1)}[data-theme=dark] .recommendation-card__title{color:#f9fafb}[data-theme=dark] .recommendation-card__occupation{color:#60a5fa}[data-theme=dark] .recommendation-card__description,[data-theme=dark] .recommendation-card__location,[data-theme=dark] .recommendation-card__meta,[data-theme=dark] .recommendation-card__rate{color:#9ca3af}[data-theme=dark] .recommendation-card__type-badge{background:hsla(0,0%,100%,.1);color:#9ca3af}[data-theme=dark] .recommendation-card__explanation{background:linear-gradient(135deg,#78350f,#92400e);color:#fef3c7}[data-theme=dark] .recommendation-card__action{border-color:hsla(0,0%,100%,.1);color:#60a5fa}[data-theme=dark] .skeleton-line{background:linear-gradient(90deg,#374151 25%,#4b5563 50%,#374151 75%);background-size:200% 100%}@media (prefers-color-scheme:dark){.recommendation-card{background:#1f2937;border-color:#374151}.recommendation-card__title{color:#f9fafb}.recommendation-card__occupation{color:#60a5fa}.recommendation-card__description,.recommendation-card__location,.recommendation-card__meta,.recommendation-card__rate{color:#9ca3af}.recommendation-card__type-badge{background:#374151;color:#9ca3af}.recommendation-card__explanation{background:linear-gradient(135deg,#78350f,#92400e);color:#fef3c7}.recommendation-card__action{border-color:#374151}.skeleton-line{background:linear-gradient(90deg,#374151 25%,#4b5563 50%,#374151 75%);background-size:200% 100%}}@media (max-width:640px){.recommendation-card{min-width:min(260px,calc(100vw - 40px));max-width:280px;padding:14px}.recommendation-card__title{font-size:15px}.recommendation-card__explanation-text{max-width:180px}}@media (min-width:901px){.recommendation-card__action,.recommendation-card__description,.recommendation-card__explanation,.recommendation-card__explanation-icon,.recommendation-card__meta,.recommendation-card__occupation,.recommendation-card__title,.recommendation-card__type-badge{font-size:var(--aa-text)}}