/* TFV bo loc danh muc - tach khoi snippets/tfv-filter-pro.bwt 11/08/2026 */

#tfv-fpro-root{max-width:1200px;margin:10px auto 14px;padding:0 12px;font-family:inherit}
/* ---------- featured strip ---------- */
.fpro-feat{background:linear-gradient(135deg,#1e293b 0%,#334155 100%);border-radius:14px;padding:14px 14px 10px;margin-bottom:12px;position:relative;overflow:hidden}
.fpro-feat:before{content:"";position:absolute;right:-40px;top:-40px;width:180px;height:180px;border-radius:50%;background:rgba(234,88,12,.18)}
.fpro-feat-hd{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.fpro-feat-hd svg{flex:0 0 auto}
.fpro-feat-hd b{color:#fff;font-size:16px;letter-spacing:.3px}
.fpro-feat-hd span{color:#cbd5e1;font-size:12.5px;margin-left:auto}
.fpro-feat-tr{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}
.fpro-feat-tr::-webkit-scrollbar{display:none}
.fpro-fnav{position:absolute;top:112px;width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.94);color:#1e293b;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.3);z-index:3;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .15s}
.fpro-fnav:hover{background:#ea580c;color:#fff}
.fpro-fnav.prev{left:8px}
.fpro-fnav.next{right:8px}
.fpro-feat-hd b a{color:#fff;text-decoration:none}
.fpro-feat-hd b a:hover{color:#fdba74}
.fpro-feat-all{color:#fbbf24;text-decoration:none;font-weight:600}
.fpro-feat-all:hover{color:#fde68a}
@media(max-width:768px){.fpro-fnav{display:none}}
.fpro-card{flex:0 0 150px;scroll-snap-align:start;background:#fff;border-radius:10px;padding:8px;text-decoration:none;display:flex;flex-direction:column;gap:6px;transition:transform .18s,box-shadow .18s}
.fpro-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.25)}
.fpro-card img{width:100%;height:96px;object-fit:contain;border-radius:6px;background:#f8fafc}
.fpro-card i{font-style:normal;font-size:12px;line-height:1.35;color:#1e293b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:32px}
.fpro-card em{font-style:normal;font-size:13px;font-weight:700;color:#ea580c}
.fpro-card em.lh{color:#0369a1;font-size:12px}
/* ---------- main panel ---------- */
.fpro-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 10px rgba(15,23,42,.05);padding:14px 16px 12px}
.fpro-panel-hd{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.fpro-panel-hd .tt{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800;color:#1e293b}
.fpro-panel-hd .tt:before{content:"";width:4px;height:18px;border-radius:2px;background:#ea580c;display:inline-block}
.fpro-count{margin-left:auto;font-size:13px;color:#475569;background:#f1f5f9;border-radius:999px;padding:4px 12px;font-weight:600;white-space:nowrap}
.fpro-count b{color:#ea580c}
.fpro-clear{border:1px solid #fdba74;background:#fff7ed;color:#ea580c;border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:600;cursor:pointer;display:none}
.fpro-clear.on{display:inline-block}
.fpro-clear:hover{background:#ffedd5}
.fpro-g{display:flex;gap:10px;padding:7px 0;border-top:1px dashed #e2e8f0;align-items:flex-start}
.fpro-g:first-of-type{border-top:0}
.fpro-gl{flex:0 0 118px;font-size:12.5px;font-weight:700;color:#64748b;padding-top:5px;line-height:1.3}
.fpro-gc{display:flex;flex-wrap:wrap;gap:6px;flex:1;min-width:0}
.fpro-chip{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:4px 11px;font-size:12.5px;line-height:1.4;cursor:pointer;user-select:none;transition:all .15s;white-space:nowrap}
.fpro-chip small{color:#94a3b8;font-size:10.5px;margin-left:3px;font-weight:600}
.fpro-chip:hover{border-color:#fb923c;background:#fff7ed;color:#c2410c}
.fpro-chip.on{background:#ea580c;border-color:#ea580c;color:#fff;font-weight:600;box-shadow:0 2px 6px rgba(234,88,12,.35)}
.fpro-chip.on small{color:#fed7aa}
.fpro-chip.off{opacity:.38;pointer-events:none}
.fpro-chip.nav{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}
.fpro-chip.nav:hover{background:#e0f2fe;border-color:#7dd3fc}
.fpro-chip.nav:after{content:" \2197";font-size:10px}
.fpro-note{display:none;margin-top:8px;font-size:12.5px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:7px 10px}
.fpro-note.on{display:block}
/* ---------- empty state ---------- */
.fpro-empty{display:none;text-align:center;padding:26px 12px;color:#475569;font-size:14px}
.fpro-empty.on{display:block}
.fpro-empty button{margin-top:10px;border:0;background:#ea580c;color:#fff;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer}
/* ---------- sticky bar ---------- */
#tfv-fpro-sticky{position:fixed;left:0;right:0;z-index:1600;visibility:hidden;transform:translateY(-130%);transition:transform .25s ease;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.12);border-bottom:1px solid #e2e8f0}
#tfv-fpro-sticky.show{transform:translateY(0);visibility:visible}
.fpro-sk-in{max-width:1200px;margin:0 auto;padding:10px 12px 8px;display:flex;align-items:center;gap:8px}
.fpro-sk-g1{display:flex;gap:6px;align-items:center;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.fpro-sk-g1::-webkit-scrollbar{display:none}
.fpro-sk-gl{font-size:11.5px;color:#94a3b8;font-weight:700;white-space:nowrap;margin-right:2px}
.fpro-sk-in::-webkit-scrollbar{display:none}
.fpro-sk-lbl{display:flex;align-items:center;gap:6px;font-weight:800;font-size:13.5px;color:#1e293b;white-space:nowrap;flex:0 0 auto}
.fpro-sk-lbl svg{color:#ea580c}
.fpro-sk-chips{display:flex;gap:6px;align-items:center;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.fpro-sk-chips::-webkit-scrollbar{display:none}
.fpro-sk-hint{font-size:12px;color:#94a3b8;white-space:nowrap}
.fpro-sk-cnt{margin-left:auto;flex:0 0 auto;font-size:12.5px;font-weight:700;color:#ea580c;background:#fff7ed;border-radius:999px;padding:3px 10px;white-space:nowrap}
.fpro-sk-x{flex:0 0 auto;border:0;background:transparent;color:#64748b;font-size:12px;cursor:pointer;text-decoration:underline;white-space:nowrap;display:none}
.fpro-sk-x.on{display:inline}
#tfv-fpro-skpanel{max-height:0;overflow:hidden;transition:max-height .28s ease}
#tfv-fpro-sticky.open #tfv-fpro-skpanel{max-height:70vh;overflow-y:auto}
.fpro-skp-in{max-width:1200px;margin:0 auto;padding:4px 12px 12px}
@media(max-width:768px){
 .fpro-gl{flex-basis:100%;padding-top:2px}
 .fpro-g{flex-wrap:wrap;gap:4px}
 .fpro-gc{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
 .fpro-gc::-webkit-scrollbar{display:none}
 .fpro-card{flex-basis:132px}
}

/* TFV 11/08/2026 - sua thanh loc dinh tren mobile: bo chu 'san pham' (JS lo), thu nho badge va them vet mo ben phai de thay ro dai chip con cuon duoc */
@media(max-width:767px){
.fpro-sk-in{padding:8px 10px 6px;gap:6px}
.fpro-sk-lbl{font-size:12.5px}
.fpro-sk-cnt{font-size:12px;padding:2px 8px;margin-left:6px}
.fpro-sk-g1{position:relative;padding-right:14px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 18px),transparent 100%);mask-image:linear-gradient(to right,#000 calc(100% - 18px),transparent 100%)}
}