/* Public UX refresh part 3 */
.rec-head h2 { margin: 4px 0; font-size: 17px; }
.rec-head p { margin: 0 0 10px; font-size: 12px; color: var(--hint); }
.rec-card { background: var(--surface); border: 1px solid var(--card-border); border-radius: 14px; padding: 12px; margin-bottom: 10px; }
.rec-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.rec-market { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.6px; color: var(--hint); }
.rec-fixture { font-weight: 800; font-size: 14px; margin-top: 6px; }
.rec-pick { font-size: 14px; font-weight: 700; margin-top: 4px; }
.rec-odds { background: rgba(16,185,129,0.15); color: #10B981; padding: 2px 8px; border-radius: 8px; font-size: 12px; }
.rec-meta { display: flex; justify-content: space-between; font-size: 11px; color: var(--hint); margin-top: 6px; }
.rec-copy { width: 100%; margin-top: 10px; background: rgba(56,189,248,0.14); border: 1px solid rgba(56,189,248,0.4); color: var(--text); border-radius: 10px; padding: 10px; font-weight: 800; cursor: pointer; }
.rec-cta { text-align: center; background: linear-gradient(135deg, rgba(245,158,11,0.16), rgba(245,158,11,0.05)); border: 1px solid rgba(245,158,11,0.4); border-radius: 14px; padding: 14px; font-size: 13px; display: flex; flex-direction: column; gap: 10px; }
.rec-empty { text-align: center; padding: 30px 16px; }
.rec-empty-ico { font-size: 15px; font-weight: 800; margin-bottom: 8px; }
.modal-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 50; display: flex; align-items: center; justify-content: center; padding: 20px; }
.modal-backdrop[hidden] { display: none; }
.modal { background: var(--surface); border: 1px solid var(--card-border); border-radius: 16px; padding: 18px; max-width: 420px; width: 100%; }
.modal h2 { margin: 0 0 10px; font-size: 17px; }
.modal-steps { margin: 0 0 10px; padding-left: 20px; font-size: 13px; display: flex; flex-direction: column; gap: 6px; }
.modal-warn { font-size: 12px; color: #F59E0B; background: rgba(245,158,11,0.1); border-radius: 8px; padding: 8px; }
.modal-close { width: 100%; background: #10B981; color: #fff; border: 0; border-radius: 10px; padding: 12px; font-weight: 800; cursor: pointer; margin-top: 8px; }
.skeleton-list { display: flex; flex-direction: column; gap: 10px; margin-bottom: 10px; }
.skeleton-card { height: 74px; border-radius: 14px; background: linear-gradient(90deg, rgba(255,255,255,0.05) 25%, rgba(255,255,255,0.1) 50%, rgba(255,255,255,0.05) 75%); background-size: 200% 100%; animation: shimmer 1.2s infinite; }
.fixture-call { flex-wrap: wrap; row-gap: 6px; }
