/* KumaunMart AI/ML Phase 5 — Content-Based Recommendations */
.km-cb-section{position:relative;overflow:hidden}.km-cb-grid,.km-cb-modal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.km-cb-card{overflow:hidden;border:1px solid #e9edf3;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(15,23,42,.07);transition:.25s}.km-cb-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(15,23,42,.12)}.km-cb-image-wrap{position:relative;display:block;height:190px;background:linear-gradient(145deg,#fff7f7,#f8fafc);overflow:hidden}.km-cb-image-wrap img{width:100%;height:100%;object-fit:contain;padding:14px}.km-cb-match{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:rgba(17,24,39,.9);color:#fff;font-size:11px;font-weight:900}.km-cb-body{padding:15px}.km-cb-meta{font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#d90429}.km-cb-body h3{margin:6px 0 3px;font-size:17px;color:#111827}.km-cb-restaurant{margin:0;color:#64748b;font-size:12px;font-weight:700}.km-cb-reason{min-height:36px;margin:9px 0;color:#475569;font-size:12px;line-height:1.5}.km-cb-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.km-cb-price{display:flex;align-items:baseline;gap:6px}.km-cb-price span{text-decoration:line-through;color:#94a3b8;font-size:11px}.km-cb-price strong{font-size:18px}.km-cb-open{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#111827;font-size:11px;font-weight:900}.km-cb-state{display:flex;align-items:center;gap:12px;padding:17px 18px;border:1px dashed #cbd5e1;border-radius:18px;background:#f8fafc;color:#475569}.km-cb-state i{font-size:20px;color:#d90429}.km-cb-state b,.km-cb-state span{display:block}.km-cb-state span{margin-top:3px;font-size:12px}.km-cb-similar-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #e5e7eb;border-radius:10px;padding:9px 11px;background:#fff;color:#111827;font-weight:900;font-size:11px;cursor:pointer}.km-cb-similar-btn:hover{border-color:#d90429;color:#d90429}.km-cb-modal{position:fixed;inset:0;z-index:99999;display:none}.km-cb-modal.show{display:block}.km-cb-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.67);backdrop-filter:blur(5px)}.km-cb-dialog{position:relative;z-index:2;width:min(1120px,calc(100% - 28px));max-height:88vh;overflow:auto;margin:6vh auto;padding:26px;border-radius:26px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.28)}.km-cb-close{position:absolute;right:18px;top:18px;width:38px;height:38px;border:0;border-radius:50%;background:#f1f5f9;cursor:pointer}.km-cb-dialog-head span{display:inline-flex;align-items:center;gap:7px;color:#d90429;font-size:11px;font-weight:900;text-transform:uppercase}.km-cb-dialog-head h2{margin:7px 0 5px}.km-cb-dialog-head p{margin:0 45px 20px 0;color:#64748b}.km-cb-modal-state{padding:25px;text-align:center;color:#64748b}.km-cb-lock{overflow:hidden}.km-cb-model-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#111827;color:#fff;font-size:10px;font-weight:900}.km-cb-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
@media(max-width:980px){.km-cb-grid,.km-cb-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.km-cb-grid,.km-cb-modal-grid{grid-template-columns:1fr}.km-cb-image-wrap{height:210px}.km-cb-dialog{padding:20px;margin:3vh auto;max-height:94vh}}
