/* ==========================================================================
   Bricks Lagbe — main stylesheet (mobile-first)
   ========================================================================== */

:root {
	--red: #9E2A1B;
	--red-tint: #F6E7E2;
	--green: #1B6B3A;
	--green-dk: #14532D;
	--green-tint: #E5F0E8;
	--orange: #C2410C;
	--ink: #1F1A17;
	--ink-2: #3D332D;
	--muted: #5E534C;
	--muted-2: #6B5F57;
	--line: #E7E0D8;
	--line-2: #EDE6DE;
	--bg: #F7F4EF;
	--field: #FBF9F6;
	--card: #fff;
	--radius: 16px;
	--font: 'BL Digits', 'Hind Siliguri', 'Noto Sans Bengali', system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; background: #F7F4EF; }
/* Smooth page-to-page navigation (no white flash) in supporting browsers. */
@view-transition { navigation: auto; }
body { margin: 0; font-family: var(--font); font-size: 16px; line-height: 1.55; color: var(--ink); background: var(--bg); }
h1, h2, h3, h4, p { margin: 0; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; }
.bl-ic { width: 20px; height: 20px; flex: none; display: block; }
.bl-noscroll { overflow: hidden; }
.bl-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.bl-skip { position: absolute; left: -999px; top: 8px; z-index: 100; background: #fff; padding: 8px 14px; border-radius: 8px; }
.bl-skip:focus { left: 8px; }
:focus-visible { outline: 3px solid #F59E0B; outline-offset: 2px; }

.bl-wrap { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 16px; }
.bl-narrow { max-width: 860px; }
.bl-only-d, .bl-only-d-inline { display: none !important; }
.bl-muted { color: var(--muted-2); font-size: 14px; }
.bl-mt { margin-top: 12px; }
.bl-mb { margin-bottom: 12px; }
.bl-link { background: none; border: 0; padding: 0; color: var(--green); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; font-size: 14px; }

/* Buttons */
.bl-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: 12px; font-weight: 600; border: 0; font-size: 16px; white-space: nowrap; text-align: center; transition: filter .15s; }
.bl-btn:hover { filter: brightness(.94); }
.bl-btn .bl-ic { width: 20px; height: 20px; }
.bl-btn-orange { background: var(--orange); color: #fff; }
.bl-btn-green { background: var(--green); color: #fff; }
.bl-btn-ghost { color: var(--green); border: 1.5px solid #CFE0D5; background: #fff; }
.bl-btn-white { background: #fff; color: #9A3412; }
.bl-btn-line-w { border: 1.5px solid rgba(255,255,255,.75); color: #fff; background: transparent; }
.bl-btn-wa { background: #128C4A; color: #fff; }
.bl-btn-block { width: 100%; }
.bl-btn-lg { min-height: 52px; font-size: 17px; }
.bl-btn[disabled], .bl-btn.is-busy { opacity: .65; cursor: progress; }
.bl-icon-btn { width: 44px; height: 44px; border: 0; background: transparent; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; color: var(--green); padding: 0; }
.bl-icon-btn .bl-ic { width: 26px; height: 26px; }
.bl-sbtn { min-height: 40px; padding: 0 12px; border-radius: 10px; border: 1.5px solid #E2D9CF; background: #fff; font-size: 14px; font-weight: 600; color: var(--ink-2); display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.bl-sbtn .bl-ic { width: 16px; height: 16px; }
.bl-sbtn-danger { color: #B42318; }

/* Alerts & messages */
.bl-alert, .bl-msg { border-radius: 12px; padding: 12px 14px; font-size: 15px; margin: 0 0 14px; border: 1px solid; }
.bl-msg { margin: 12px 0 0; }
.is-ok { background: #EAF5EE; border-color: #BCDDC8; color: #14532D; }
.is-error { background: #FDECEA; border-color: #F3C2BC; color: #8F1D13; }
.is-info { background: #FFF6E8; border-color: #F3D9AE; color: #7A3306; }
.bl-msg[hidden] { display: none; }

/* Header */
.bl-hd { background: #fff; border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 30; }
.admin-bar .bl-hd { top: 46px; }
.bl-hd-in { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: 12px; }
.bl-logo, .custom-logo-link { display: flex; align-items: center; gap: 8px; }
.custom-logo { max-height: 48px; width: auto; }
.bl-logo-mark { width: 44px; height: 44px; flex: none; }
.bl-logo-txt { display: flex; flex-direction: column; line-height: 1.05; }
.bl-logo-en { font-weight: 700; font-size: 20px; letter-spacing: -.2px; }
.bl-logo-en .r { color: var(--red); }
.bl-logo-en .g, .bl-logo-bn { color: var(--green); }
.bl-logo-bn { font-weight: 600; font-size: 14px; }
.bl-nav { gap: 4px; align-items: center; }
.bl-nav a { padding: 8px 14px; border-radius: 10px; font-weight: 500; color: var(--ink-2); }
.bl-nav a:hover { background: var(--bg); }
.bl-nav a.on, .bl-nav .current-menu-item > a { color: var(--red); background: var(--red-tint); }
.bl-hd-act { display: flex; align-items: center; gap: 8px; }

/* Drawer */
.bl-drawer { position: fixed; inset: 0; z-index: 60; background: rgba(31,26,23,.45); opacity: 0; transition: opacity .2s; }
.bl-drawer.is-open { opacity: 1; }
.bl-drawer-panel { position: absolute; inset: 0 auto 0 0; width: min(320px, 86vw); background: #fff; padding: 12px 14px 20px; display: flex; flex-direction: column; gap: 12px; transform: translateX(-100%); transition: transform .2s; overflow-y: auto; }
.bl-drawer.is-open .bl-drawer-panel { transform: none; }
.bl-drawer-hd { display: flex; align-items: center; justify-content: space-between; }
.bl-drawer-nav { display: flex; flex-direction: column; }
.bl-drawer-nav a { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 10px; border-radius: 12px; font-weight: 500; }
.bl-drawer-nav a:hover { background: var(--bg); }
.bl-drawer-nav .bl-ic { color: var(--muted-2); }
.bl-drawer-nav hr { border: 0; border-top: 1px solid var(--line); width: 100%; margin: 8px 0; }

/* Hero */
.bl-hero { background: var(--red); color: #fff; padding: 24px 0 28px; }
.bl-hero-in { display: grid; grid-template-columns: minmax(0,1fr); grid-template-areas: "copy" "media" "search"; gap: 20px; }
.bl-hero-copy { grid-area: copy; }
.bl-chip { display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,.14); color: #fff; font-size: 13px; font-weight: 500; padding: 4px 12px; border-radius: 999px; margin-bottom: 12px; }
.bl-chip .bl-ic { width: 16px; height: 16px; }
.bl-hero h1 { font-size: 34px; line-height: 1.2; font-weight: 700; }
.bl-hero-lead { margin-top: 10px; font-size: 16px; color: #F8E3DC; max-width: 520px; }
.bl-hero-media { grid-area: media; border-radius: 16px; overflow: hidden; aspect-ratio: 16/9; background: #7D2116; }
.bl-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.bl-search { grid-area: search; background: #fff; color: var(--ink); border-radius: 16px; padding: 12px; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; box-shadow: 0 10px 30px rgba(60,15,8,.25); }
.bl-field { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bl-field.bl-kw { grid-column: 1/-1; }
.bl-field label { font-size: 12.5px; font-weight: 600; color: var(--muted); padding-left: 4px; }
.bl-inp { display: flex; align-items: center; gap: 8px; height: 48px; border: 1.5px solid var(--line); border-radius: 12px; padding: 0 12px; background: var(--field); }
.bl-inp .bl-ic { color: var(--muted-2); }
.bl-inp input, .bl-inp select { border: 0; background: transparent; font-size: 15px; width: 100%; min-width: 0; height: 100%; outline: none; }
.bl-search .bl-btn { grid-column: 1/-1; height: 48px; }

/* Trust */
.bl-trust { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; padding-top: 20px; }
.bl-tr { display: flex; gap: 12px; align-items: center; background: #fff; border: 1px solid var(--line-2); border-radius: var(--radius); padding: 14px 16px; }
.bl-tr-ic { width: 44px; height: 44px; border-radius: 12px; background: var(--green-tint); color: var(--green); display: flex; align-items: center; justify-content: center; flex: none; }
.bl-tr b { display: block; font-size: 16px; font-weight: 600; line-height: 1.3; }
.bl-tr span { font-size: 13.5px; color: var(--muted-2); }

/* Sections */
.bl-sec { padding: 28px 0; }
.bl-sec-tight { padding-top: 0; }
.bl-sec-hd { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.bl-sec-hd h2 { font-size: 22px; font-weight: 700; line-height: 1.3; }
.bl-sec-hd p { color: var(--muted-2); font-size: 14px; margin-top: 2px; }
.bl-more { color: var(--green); font-weight: 600; display: inline-flex; align-items: center; gap: 2px; font-size: 15px; white-space: nowrap; min-height: 44px; }
.bl-more .bl-ic { width: 18px; height: 18px; }

/* Categories */
.bl-cats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; }
.bl-cat { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; background: #fff; border: 1px solid var(--line-2); border-radius: var(--radius); padding: 16px 6px 14px; transition: border-color .15s, transform .15s; }
.bl-cat:hover { border-color: #D9B9AE; transform: translateY(-2px); }
.bl-cat-ic { width: 64px; height: 64px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--red-tint); color: var(--red); }
.bl-cat-ic.g { background: var(--green-tint); color: var(--green); }
.bl-cat-ic .bl-ic { width: 34px; height: 34px; }
.bl-cat b { font-size: 16px; font-weight: 600; line-height: 1.25; }
.bl-cat small { font-size: 12.5px; color: var(--muted-2); line-height: 1.3; }

.bl-chips { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; margin-bottom: 14px; scrollbar-width: none; }
.bl-chips::-webkit-scrollbar { display: none; }
.bl-chipf { flex: none; display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1.5px solid #E2D9CF; background: #fff; font-weight: 500; color: var(--ink-2); font-size: 15px; }
.bl-chipf.on, .bl-chipf[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: #fff; }

/* Grid & cards */
.bl-grid { display: grid; grid-template-columns: repeat(1, minmax(0,1fr)); gap: 14px; }
.bl-grid-scroll { grid-auto-flow: column; grid-auto-columns: 80%; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 8px; scrollbar-width: none; }
.bl-grid-scroll::-webkit-scrollbar { display: none; }
.bl-card { position: relative; scroll-snap-align: start; background: #fff; border: 1px solid var(--line-2); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; min-width: 0; }
.bl-card-media { display: block; aspect-ratio: 16/10; background: #E9E1D8; }
.bl-card-media img { width: 100%; height: 100%; object-fit: cover; }
.bl-noimg { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #B8A99C; }
.bl-noimg .bl-ic { width: 40px; height: 40px; }
.bl-tag { position: absolute; left: 10px; top: 10px; background: rgba(31,26,23,.84); color: #fff; font-size: 12.5px; font-weight: 600; padding: 3px 10px; border-radius: 999px; }
.bl-fav { position: absolute; right: 4px; top: 4px; width: 44px; height: 44px; border: 0; background: transparent; display: flex; align-items: center; justify-content: center; padding: 0; }
.bl-fav span { width: 34px; height: 34px; border-radius: 50%; background: #fff; display: flex; align-items: center; justify-content: center; color: var(--red); box-shadow: 0 2px 6px rgba(0,0,0,.14); }
.bl-fav .bl-ic { width: 18px; height: 18px; }
.bl-fav[aria-pressed="true"] .bl-ic { fill: var(--red); }
.bl-card-body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.bl-card h3 { font-size: 17px; font-weight: 600; line-height: 1.3; }
.bl-card h3 a:hover { color: var(--red); }
.bl-price { display: flex; align-items: baseline; gap: 4px; flex-wrap: wrap; }
.bl-price strong { font-size: 21px; font-weight: 700; color: var(--red); line-height: 1.2; }
.bl-price span { font-size: 14px; color: var(--muted-2); }
.bl-price-lg strong { font-size: 30px; }
.bl-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 13.5px; color: var(--muted); }
.bl-stock, .bl-pill { font-size: 12.5px; font-weight: 600; padding: 2px 10px; border-radius: 999px; white-space: nowrap; display: inline-block; }
.s-in, .p-in, .p-act { background: var(--green-tint); color: #165C31; }
.s-ltd, .p-ltd { background: #FCEBDD; color: #8F3606; }
.s-out, .p-out, .p-pause { background: #EFE9E4; color: var(--muted); }
.p-pend { background: #FFF0D9; color: #8F3606; }
.bl-loc { display: flex; align-items: center; gap: 6px; font-size: 14px; color: var(--ink-2); }
.bl-loc .bl-ic { width: 16px; height: 16px; color: var(--green); }
.bl-seller { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 500; padding-top: 8px; border-top: 1px dashed #E2D9CF; }
.bl-vf-ic { width: 17px; height: 17px; display: inline-block; vertical-align: -3px; }
.bl-vf { font-size: 12px; color: var(--green); font-weight: 600; }
.bl-unlock { margin-top: auto; width: 100%; min-height: 44px; border-radius: 12px; background: var(--green); color: #fff; font-weight: 600; font-size: 15px; display: flex; align-items: center; justify-content: center; gap: 8px; }
.bl-unlock .bl-ic { width: 18px; height: 18px; }
.bl-unlock.is-open { background: #fff; color: var(--green); border: 1.5px solid #CFE0D5; }

/* Districts */
.bl-dist { display: flex; flex-wrap: wrap; gap: 8px; }
.bl-dist a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 16px; border-radius: 12px; background: #fff; border: 1px solid var(--line-2); font-weight: 500; font-size: 15px; }
.bl-dist a:hover { border-color: #D9B9AE; }
.bl-dist a[aria-pressed="true"] { background: var(--red); border-color: var(--red); color: #fff; }
.bl-dist a[aria-pressed="true"] .bl-ic { color: #fff; }
.bl-cat[aria-pressed="true"] { border-color: var(--red); box-shadow: 0 0 0 2px var(--red) inset; }
.bl-dist .bl-ic { width: 16px; height: 16px; color: var(--red); }

/* How it works */
.bl-how { background: #fff; border-top: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); }
.bl-steps { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; }
.bl-step { display: flex; gap: 14px; align-items: flex-start; padding: 18px; border-radius: var(--radius); background: var(--bg); }
.bl-step-n { flex: none; width: 48px; height: 48px; border-radius: 14px; background: var(--red); color: #fff; display: flex; align-items: center; justify-content: center; }
.bl-step-n .bl-ic { width: 24px; height: 24px; }
.bl-step small { display: block; font-size: 13px; font-weight: 600; color: var(--red); }
.bl-step h3 { font-size: 18px; font-weight: 600; line-height: 1.3; }
.bl-step p { font-size: 14.5px; color: var(--muted); margin-top: 4px; }

/* CTA */
.bl-cta { background: var(--orange); color: #fff; border-radius: 20px; padding: 24px; display: flex; flex-direction: column; gap: 18px; }
.bl-cta-txt { display: flex; gap: 16px; align-items: flex-start; }
.bl-cta-ic { flex: none; width: 52px; height: 52px; border-radius: 14px; background: rgba(255,255,255,.16); display: flex; align-items: center; justify-content: center; }
.bl-cta-ic .bl-ic { width: 28px; height: 28px; }
.bl-cta h2 { font-size: 23px; font-weight: 700; line-height: 1.3; }
.bl-cta p { color: #FFE8DA; font-size: 15px; margin-top: 6px; }
.bl-cta-btns { display: flex; flex-wrap: wrap; gap: 10px; }

/* Footer */
.bl-ft { background: var(--ink); color: #D9CFC6; padding: 36px 0; }
.bl-ft-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; }
.bl-ft-brand { grid-column: 1/-1; }
.bl-ft .bl-logo-en .r { color: #F08A74; }
.bl-ft .bl-logo-en .g, .bl-ft .bl-logo-bn { color: #86D0A0; }
.bl-ft-brand p { font-size: 14px; color: #B9ADA3; margin-top: 12px; max-width: 320px; }
.bl-ft-brand p a { display: inline-flex; gap: 6px; align-items: center; }
.bl-ft h4 { margin: 0 0 8px; font-size: 15px; color: #fff; font-weight: 600; }
.bl-ft ul { list-style: none; margin: 0; padding: 0; }
.bl-ft li a { font-size: 14px; color: #D9CFC6; display: inline-block; padding: 6px 0; }
.bl-ft li a:hover { color: #fff; }
.bl-ft-bot { margin-top: 28px; padding-top: 18px; border-top: 1px solid #3A322D; display: flex; flex-wrap: wrap; gap: 10px; justify-content: space-between; align-items: center; font-size: 13px; color: #A99C92; }
.bl-pay { display: inline-flex; align-items: center; gap: 8px; }
.bl-pay b { background: #fff; color: var(--ink); padding: 2px 10px; border-radius: 6px; }

/* Bottom nav (mobile) */
.bl-bn { position: fixed; left: 0; right: 0; bottom: 0; z-index: 25; background: #fff; border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); padding: 6px 4px calc(8px + env(safe-area-inset-bottom)); }
.bl-bn a { display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: 12px; font-weight: 500; color: var(--muted-2); min-height: 52px; justify-content: flex-end; text-align: center; }
.bl-bn .bl-ic { width: 24px; height: 24px; }
.bl-bn a.on { color: var(--green); font-weight: 600; }
.bl-bn .pc { width: 48px; height: 48px; margin-top: -22px; border-radius: 50%; background: var(--orange); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 14px rgba(194,65,12,.35); border: 3px solid #fff; }
.bl-bn a.plus { color: var(--orange); font-weight: 600; }

/* Page header, breadcrumbs */
.bl-page-hd { background: #fff; border-bottom: 1px solid var(--line-2); padding: 18px 0 20px; margin-bottom: 20px; }
.bl-page-hd h1 { font-size: 24px; font-weight: 700; line-height: 1.3; }
.bl-page-hd p { color: var(--muted-2); font-size: 14.5px; margin-top: 2px; }
.bl-crumbs { font-size: 13.5px; color: var(--muted-2); margin-bottom: 6px; display: flex; flex-wrap: wrap; gap: 4px; }
.bl-crumbs a { color: var(--green); }
.bl-single .bl-crumbs { padding-top: 16px; margin-bottom: 14px; }

/* Panels & forms */
.bl-panel { background: #fff; border: 1px solid var(--line-2); border-radius: var(--radius); padding: 16px; min-width: 0; }
.bl-panel + .bl-panel { margin-top: 16px; }
.bl-panel-hd { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.bl-panel-hd h2, .bl-h2 { font-size: 18px; font-weight: 700; line-height: 1.35; }
.bl-h2 { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.bl-num { width: 30px; height: 30px; border-radius: 9px; background: var(--red-tint); color: var(--red); display: inline-flex; align-items: center; justify-content: center; font-size: 14px; flex: none; }
.bl-form { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.bl-form .bl-panel + .bl-panel { margin-top: 0; }
.bl-fg { display: grid; grid-template-columns: minmax(0,1fr); gap: 14px; }
.bl-f { display: flex; flex-direction: column; gap: 5px; min-width: 0; border: 0; padding: 0; margin: 0 0 14px; }
.bl-fg .bl-f { margin-bottom: 0; }
.bl-f label, .bl-f legend { font-size: 14px; font-weight: 600; color: var(--ink-2); padding: 0; margin-bottom: 4px; }
.bl-f em { color: #B42318; font-style: normal; }
.bl-hint { font-size: 12.5px; color: var(--muted-2); }
.bl-in { height: 48px; border: 1.5px solid #E2D9CF; border-radius: 12px; padding: 0 14px; background: var(--field); font-size: 15px; width: 100%; min-width: 0; }
textarea.bl-in { height: auto; min-height: 100px; padding: 12px 14px; resize: vertical; line-height: 1.5; }
.bl-in:focus, .bl-in-group:focus-within { border-color: var(--green); outline: none; box-shadow: 0 0 0 3px rgba(27,107,58,.15); }
.bl-in[disabled] { opacity: .7; }
.bl-file { padding: 10px; height: auto; }
.bl-in-group { display: flex; align-items: stretch; border: 1.5px solid #E2D9CF; border-radius: 12px; background: var(--field); overflow: hidden; }
.bl-in-group b { display: flex; align-items: center; padding: 0 12px; background: #F2EDE7; color: var(--muted); font-weight: 600; white-space: nowrap; font-size: 14px; }
.bl-in-group input { flex: 1; min-width: 0; border: 0; background: transparent; font-size: 16px; padding: 0 12px; height: 45px; outline: none; }
.bl-in-group select { border: 0; border-left: 1.5px solid #E2D9CF; background: #fff; font-size: 14px; padding: 0 8px; max-width: 46%; }
.bl-opts { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.bl-opt { position: relative; display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 8px 12px; border: 1.5px solid #E2D9CF; border-radius: 12px; background: #fff; font-weight: 500; font-size: 15px; color: var(--ink-2); cursor: pointer; }
.bl-opt input { position: absolute; opacity: 0; pointer-events: none; }
.bl-opt .rd { flex: none; width: 20px; height: 20px; border-radius: 50%; border: 2px solid #C9BEB3; }
.bl-opt.is-on { border-color: var(--green); background: #F1F8F3; color: var(--green-dk); font-weight: 600; }
.bl-opt.is-on .rd { border: 6px solid var(--green); }
.bl-opt:focus-within { box-shadow: 0 0 0 3px rgba(27,107,58,.2); }
.bl-opt-c { justify-content: center; text-align: center; font-size: 14px; }
.bl-radios { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 15px; }
.bl-radios label { display: inline-flex; align-items: center; gap: 6px; font-weight: 400; min-height: 32px; }
.bl-radios input { accent-color: var(--green); width: 18px; height: 18px; }
.bl-radios-col { flex-direction: column; }
.bl-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.bl-actions .bl-btn { flex: 1 1 160px; }

/* Image uploader */
.bl-up { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
.bl-drop { grid-column: 1/-1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; text-align: center; border: 2px dashed #D6CBBF; border-radius: 14px; padding: 22px 12px; background: var(--field); color: var(--muted); font-size: 13.5px; cursor: pointer; }
.bl-drop:focus-within { border-color: var(--green); }
.bl-drop .bl-ic { width: 34px; height: 34px; color: var(--red); }
.bl-drop b { color: var(--ink); font-size: 15.5px; }
.bl-thumb { position: relative; aspect-ratio: 1/1; border-radius: 12px; overflow: hidden; background: #EFE9E4; }
.bl-thumb img { width: 100%; height: 100%; object-fit: cover; }
.bl-thumb.is-removed img { opacity: .3; filter: grayscale(1); }
.bl-cover { position: absolute; left: 6px; bottom: 6px; background: rgba(255,255,255,.92); font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 999px; display: inline-flex; gap: 4px; align-items: center; cursor: pointer; }
.bl-x { position: absolute; top: 4px; right: 4px; width: 32px; height: 32px; border-radius: 50%; background: rgba(31,26,23,.78); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.bl-x .bl-ic { width: 14px; height: 14px; }
.bl-thumb.is-removed .bl-x { background: #B42318; }
.bl-thumb.is-new::after { content: 'নতুন'; position: absolute; left: 6px; bottom: 6px; background: var(--green); color: #fff; font-size: 11.5px; font-weight: 600; padding: 1px 8px; border-radius: 999px; }

.bl-form-layout { display: grid; grid-template-columns: minmax(0,1fr); gap: 16px; }
.bl-form-side { display: flex; flex-direction: column; gap: 16px; }
.bl-tips { background: #FFF6E8; border: 1px solid #F3D9AE; border-radius: var(--radius); padding: 16px; }
.bl-tips-g { background: #EEF6F0; border-color: #CFE0D5; }
.bl-tips h3 { font-size: 16px; font-weight: 700; margin-bottom: 8px; }
.bl-tips ul { margin: 0; padding: 0 0 0 18px; font-size: 14px; color: var(--muted); display: flex; flex-direction: column; gap: 4px; }
.bl-tips p { font-size: 14px; color: var(--muted); }

/* Empty state & pager */
.bl-empty { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 40px 16px; background: #fff; border: 1px dashed #D6CBBF; border-radius: var(--radius); }
.bl-empty .bl-ic { width: 40px; height: 40px; color: #B8A99C; }
.bl-empty b { font-size: 18px; }
.bl-empty p { color: var(--muted-2); max-width: 420px; }
.bl-empty .bl-btn { margin-top: 6px; }
.bl-pager { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 24px 0 8px; }
.bl-pager .page-numbers { min-width: 44px; height: 44px; padding: 0 12px; border-radius: 12px; background: #fff; border: 1px solid var(--line-2); display: inline-flex; align-items: center; justify-content: center; font-weight: 600; }
.bl-pager .current { background: var(--ink); border-color: var(--ink); color: #fff; }

/* Archive */
.bl-archive { display: grid; grid-template-columns: minmax(0,1fr); gap: 16px; padding-bottom: 32px; }
.bl-filters { background: #fff; border: 1px solid var(--line-2); border-radius: var(--radius); }
.bl-filters summary { list-style: none; display: flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 16px; font-weight: 600; cursor: pointer; }
.bl-filters summary::-webkit-details-marker { display: none; }
.bl-filter-form { padding: 0 16px 16px; }
.bl-f-actions { display: flex; gap: 8px; }
.bl-f-actions .bl-btn { flex: 1; }
.bl-sortbar { display: flex; justify-content: flex-end; margin-bottom: 12px; }
.bl-sort { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--muted); }
.bl-sort select { height: 40px; border: 1.5px solid #E2D9CF; border-radius: 10px; background: #fff; padding: 0 10px; }

/* Single */
.bl-single { padding-bottom: 32px; }
.bl-single-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 16px; }
.bl-single-main, .bl-single-side { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.bl-single-main .bl-panel + .bl-panel, .bl-single-side .bl-panel + .bl-panel { margin-top: 0; }
.bl-gallery-main { position: relative; aspect-ratio: 4/3; border-radius: var(--radius); overflow: hidden; background: #E9E1D8; }
.bl-gallery-main img { width: 100%; height: 100%; object-fit: cover; }
.bl-gallery-thumbs { display: flex; gap: 8px; overflow-x: auto; padding-top: 8px; }
.bl-gallery-thumbs button { flex: none; width: 72px; height: 72px; padding: 0; border: 2px solid transparent; border-radius: 10px; overflow: hidden; background: none; }
.bl-gallery-thumbs button[aria-current="true"] { border-color: var(--red); }
.bl-gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; }
.bl-single-title { font-size: 24px; font-weight: 700; line-height: 1.3; margin-bottom: 6px; }
.bl-specs { margin: 16px 0 0; display: grid; grid-template-columns: minmax(0,1fr); border-top: 1px solid var(--line-2); }
.bl-specs div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line-2); font-size: 15px; }
.bl-specs dt { color: var(--muted-2); }
.bl-specs dd { margin: 0; font-weight: 500; text-align: right; }
.bl-single .bl-h2 { margin-top: 20px; }
.bl-unlock-box .bl-h2 { margin-top: 0; }
.bl-prose { font-size: 16px; color: var(--ink-2); }
.bl-prose p { margin: 0 0 12px; }
.bl-prose a { color: var(--green); text-decoration: underline; }
.bl-phone { display: flex; align-items: center; gap: 10px; font-size: 26px; font-weight: 700; color: var(--green-dk); margin: 4px 0 14px; letter-spacing: .5px; }
.bl-phone .bl-ic { width: 26px; height: 26px; }
.bl-phone.is-locked { color: var(--muted-2); }
.bl-contact-btns { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.bl-checks { list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--muted); }
.bl-checks li { display: flex; gap: 8px; align-items: center; }
.bl-checks .bl-ic { width: 16px; height: 16px; color: var(--green); }
.bl-seller-hd { display: flex; align-items: center; gap: 12px; }
.bl-seller-hd b { display: flex; align-items: center; gap: 6px; font-size: 17px; }
.bl-seller-hd span { font-size: 13.5px; color: var(--muted-2); }
.bl-seller-meta { list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14.5px; color: var(--ink-2); }
.bl-seller-meta li { display: flex; align-items: center; gap: 8px; }
.bl-seller-meta .bl-ic { width: 17px; height: 17px; color: var(--muted-2); }
.bl-report-link { display: inline-flex; align-items: center; gap: 6px; background: none; border: 0; color: var(--muted); font-size: 14px; min-height: 44px; padding: 0 4px; text-decoration: underline; text-underline-offset: 3px; }
.bl-report-link .bl-ic { width: 16px; height: 16px; }

.bl-av { width: 48px; height: 48px; border-radius: 50%; background: var(--red); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: 18px; flex: none; overflow: hidden; }
.bl-av img { width: 100%; height: 100%; object-fit: cover; }
.bl-av.sm { width: 38px; height: 38px; font-size: 14px; background: var(--green-tint); color: var(--green-dk); }
.bl-av.lg { width: 72px; height: 72px; font-size: 26px; }

/* Dialog */
.bl-dialog { border: 0; border-radius: 18px; padding: 18px; width: min(440px, calc(100vw - 32px)); box-shadow: 0 20px 60px rgba(0,0,0,.25); }
.bl-dialog::backdrop { background: rgba(31,26,23,.5); }
.bl-dialog-hd { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.bl-dialog-hd h2 { font-size: 19px; }
.bl-dialog .bl-muted { margin-bottom: 12px; }

/* Auth */
.bl-auth { padding: 28px 16px 48px; display: flex; justify-content: center; }
.bl-auth-card { width: 100%; max-width: 440px; background: #fff; border: 1px solid var(--line-2); border-radius: 20px; padding: 24px 20px; }
.bl-auth-hd { text-align: center; margin-bottom: 20px; }
.bl-auth-hd .bl-logo-mark { width: 56px; height: 56px; margin: 0 auto 8px; }
.bl-auth-hd h1 { font-size: 24px; }
.bl-auth-hd p { color: var(--muted-2); font-size: 14.5px; margin-top: 4px; }
.bl-otp [data-step] { display: flex; flex-direction: column; gap: 10px; }
.bl-otp [data-step][hidden] { display: none; }
.bl-otp-code { font-size: 24px; letter-spacing: 8px; text-align: center; font-weight: 700; }
.bl-auth-foot { font-size: 12.5px; color: var(--muted-2); text-align: center; margin-top: 16px; }

/* Dashboard */
.bl-is-dashboard { background: var(--bg); }
.bl-app { display: flex; flex-wrap: wrap; align-items: stretch; max-width: 1400px; margin: 0 auto; }
.bl-side { display: none; }
.bl-app-main { flex: 999 1 560px; min-width: 0; }
.bl-app-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px 8px; }
.bl-app-top h1 { font-size: 22px; font-weight: 700; }
.bl-tabstrip { display: flex; gap: 6px; overflow-x: auto; padding: 4px 16px 10px; scrollbar-width: none; }
.bl-tabstrip::-webkit-scrollbar { display: none; }
.bl-tabstrip a { flex: none; min-height: 40px; display: inline-flex; align-items: center; padding: 0 14px; border-radius: 999px; background: #fff; border: 1px solid var(--line-2); font-size: 14px; font-weight: 500; }
.bl-tabstrip a.on { background: var(--ink); border-color: var(--ink); color: #fff; }
.bl-app-content { padding: 6px 16px 32px; display: flex; flex-direction: column; gap: 16px; }
.bl-app-content > .bl-panel + .bl-panel { margin-top: 0; }
.bl-alert-box { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-start; background: #FFF6E8; border: 1px solid #F3D9AE; border-radius: 14px; padding: 14px; }
.bl-alert-box > div:nth-child(2) { flex: 1 1 220px; }
.bl-alert-box b { display: block; font-size: 15.5px; }
.bl-alert-box p { font-size: 14px; color: var(--muted); }
.bl-alert-ic { flex: none; width: 40px; height: 40px; border-radius: 12px; background: #FCE7C8; color: #8F3606; display: flex; align-items: center; justify-content: center; }
.bl-stats { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
.bl-stat { background: #fff; border: 1px solid var(--line-2); border-radius: var(--radius); padding: 14px; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.bl-stat-hd { display: flex; align-items: center; justify-content: space-between; font-size: 13.5px; color: var(--muted); font-weight: 500; gap: 6px; }
.bl-stat-ic { width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: var(--red-tint); color: var(--red); flex: none; }
.bl-stat-ic.g { background: var(--green-tint); color: var(--green); }
.bl-stat-ic .bl-ic { width: 19px; height: 19px; }
.bl-stat strong { font-size: 28px; font-weight: 700; line-height: 1.1; }
.bl-stat small { font-size: 12.5px; color: var(--muted-2); }
.bl-up { color: #165C31; font-weight: 600; }
.bl-down { color: #B42318; font-weight: 600; }
.bl-cols { display: grid; grid-template-columns: minmax(0,1fr); gap: 16px; }
.bl-cols .bl-panel + .bl-panel { margin-top: 0; }
.bl-chart { display: flex; align-items: flex-end; gap: 8px; height: 190px; border-bottom: 1px solid var(--line-2); }
.bl-bar { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; height: 100%; min-width: 0; }
.bl-bar i { display: block; width: 100%; max-width: 34px; min-height: 2px; border-radius: 8px 8px 3px 3px; background: #E9C9BF; }
.bl-bar i.hi { background: var(--red); }
.bl-bar em { font-style: normal; font-size: 11.5px; color: var(--muted-2); }
.bl-bar span { font-size: 12px; color: var(--muted-2); padding: 4px 0; }
.bl-leads { display: flex; flex-direction: column; }
.bl-lead { display: flex; align-items: center; gap: 10px; padding: 10px 0; border-top: 1px solid #F0EAE3; }
.bl-lead:first-child { border-top: 0; }
.bl-lead-t { flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.35; }
.bl-lead-t b { font-size: 14.5px; font-weight: 600; }
.bl-lead-t span { font-size: 12.5px; color: var(--muted-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bl-lead-t a { color: var(--green); }
.bl-lead time { font-size: 12px; color: var(--muted-2); white-space: nowrap; }
.bl-new { font-size: 11.5px; font-weight: 700; color: #fff; background: var(--orange); padding: 0 7px; border-radius: 999px; margin-left: 6px; }
.bl-cnt { margin-left: auto; background: var(--orange); color: #fff; font-size: 12px; font-weight: 600; padding: 0 8px; border-radius: 999px; }
.bl-ads { display: flex; flex-direction: column; gap: 10px; }
.bl-ad { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 10px 12px; padding: 12px; border: 1px solid #F0EAE3; border-radius: 14px; }
.bl-ad-img { width: 72px; height: 72px; border-radius: 10px; overflow: hidden; background: #EFE9E4; display: flex; align-items: center; justify-content: center; color: #B8A99C; }
.bl-ad-img img { width: 100%; height: 100%; object-fit: cover; }
.bl-ad-t { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.bl-ad-t b { font-size: 15.5px; font-weight: 600; line-height: 1.3; }
.bl-ad-pr { font-size: 14px; color: var(--red); font-weight: 700; }
.bl-ad-pr span { color: var(--muted-2); font-weight: 400; }
.bl-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 13px; color: var(--muted); align-items: center; }
.bl-meta > span { display: inline-flex; align-items: center; gap: 4px; }
.bl-meta .bl-ic { width: 15px; height: 15px; }
.bl-ad-act { grid-column: 1/-1; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.bl-contacts { display: flex; flex-direction: column; gap: 10px; }
.bl-contact { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 14px; border: 1px solid #F0EAE3; border-radius: 14px; }
.bl-contact-t { flex: 1 1 200px; display: flex; flex-direction: column; min-width: 0; line-height: 1.4; }
.bl-contact-t b { font-size: 16px; display: flex; align-items: center; gap: 6px; }
.bl-contact-t > span { font-size: 13px; color: var(--muted-2); }
.bl-contact-phone { font-size: 20px; font-weight: 700; color: var(--green-dk); margin-top: 2px; }
.bl-contact .bl-contact-btns { flex: 1 1 100%; }
.bl-table-wrap { overflow-x: auto; }
.bl-table { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.bl-table th { text-align: left; font-size: 13px; color: var(--muted-2); font-weight: 600; padding: 8px 10px; border-bottom: 1px solid var(--line); white-space: nowrap; }
.bl-table td { padding: 12px 10px; border-bottom: 1px solid #F0EAE3; vertical-align: top; }
.bl-td-act { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.bl-profile-photo { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.bl-profile-photo .bl-f { flex: 1; margin: 0; }
.bl-become { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.bl-become .bl-h2 { margin-bottom: 4px; }
.bl-bn-dash { grid-template-columns: repeat(5, minmax(0,1fr)); }

/* Mobile table → cards */
@media (max-width: 699px) {
	.bl-table thead { display: none; }
	.bl-table, .bl-table tbody, .bl-table tr, .bl-table td { display: block; width: 100%; }
	.bl-table tr { border: 1px solid #F0EAE3; border-radius: 14px; padding: 6px 12px; margin-bottom: 10px; }
	.bl-table td { border: 0; padding: 6px 0; display: flex; justify-content: space-between; gap: 12px; }
	.bl-table td[data-th]::before { content: attr(data-th); color: var(--muted-2); font-size: 13px; }
	.bl-table td.bl-td-act { display: flex; }
}

/* ---------- ≥ 640px ---------- */
@media (min-width: 640px) {
	.bl-wrap { padding: 0 24px; }
	.bl-cats { grid-template-columns: repeat(6, minmax(0,1fr)); }
	.bl-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.bl-grid-scroll { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: repeat(2, minmax(0,1fr)); overflow: visible; }
	.bl-steps { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.bl-step { flex-direction: column; }
	.bl-trust { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.bl-ft-grid { grid-template-columns: 2fr 1fr 1fr 1fr; }
	.bl-ft-brand { grid-column: auto; }
	.bl-search { grid-template-columns: repeat(3, minmax(0,1fr)); padding: 14px; align-items: end; }
	.bl-search .bl-btn { grid-column: auto; }
	.bl-fg-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.bl-fg-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.bl-opts-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.bl-up { grid-template-columns: repeat(5, minmax(0,1fr)); }
	.bl-drop { grid-column: span 2; }
	.bl-actions .bl-btn { flex: 0 0 auto; }
	.bl-panel { padding: 20px; }
	.bl-stats { grid-template-columns: repeat(4, minmax(0,1fr)); }
	.bl-ad { grid-template-columns: 80px minmax(0,1fr) auto; align-items: center; }
	.bl-ad-img { width: 80px; height: 80px; }
	.bl-ad-act { grid-column: auto; justify-content: flex-end; }
	.bl-contact .bl-contact-btns { flex: 0 0 auto; display: flex; }
	.bl-specs { grid-template-columns: repeat(2, minmax(0,1fr)); column-gap: 24px; }
	.bl-auth-card { padding: 32px 28px; }
}

/* ---------- ≥ 960px (desktop) ---------- */
@media (min-width: 960px) {
	.bl-only-d { display: flex !important; }
	.bl-only-d-inline { display: inline !important; }
	.bl-only-m { display: none !important; }
	.admin-bar .bl-hd { top: 32px; }
	.bl-hd-in { height: 76px; }
	.bl-hero { padding: 48px 0 56px; }
	.bl-hero-in { grid-template-columns: minmax(0,1.05fr) minmax(0,1fr); grid-template-areas: "copy media" "search media"; gap: 28px 48px; align-items: center; }
	.bl-hero h1 { font-size: 52px; }
	.bl-hero-lead { font-size: 18px; }
	.bl-hero-media { aspect-ratio: auto; height: 100%; min-height: 400px; border-radius: 20px; }
	.bl-grid { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 20px; }
	.bl-grid-scroll { grid-template-columns: repeat(4, minmax(0,1fr)); }
	.bl-grid-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.bl-sec { padding: 44px 0; }
	.bl-sec-tight { padding-top: 0; }
	.bl-sec-hd h2 { font-size: 28px; }
	.bl-trust { padding-top: 28px; gap: 16px; }
	.bl-cats { gap: 16px; }
	.bl-cat { padding: 22px 10px 18px; }
	.bl-cat-ic { width: 76px; height: 76px; }
	.bl-cat-ic .bl-ic { width: 40px; height: 40px; }
	.bl-cta { flex-direction: row; align-items: center; justify-content: space-between; padding: 36px 44px; }
	.bl-cta h2 { font-size: 30px; }
	.bl-cta p { font-size: 17px; }
	.bl-bn { display: none; }
	.bl-page-hd { padding: 28px 0; }
	.bl-page-hd h1 { font-size: 30px; }
	.bl-archive { grid-template-columns: 300px minmax(0,1fr); align-items: start; gap: 24px; }
	.bl-filters { position: sticky; top: 96px; }
	.bl-filters summary { pointer-events: none; }
	.bl-filters:not([open]) .bl-filter-form { display: block; }
	.bl-single-grid { grid-template-columns: minmax(0,1fr) 380px; gap: 24px; align-items: start; }
	.bl-single-side { position: sticky; top: 96px; }
	.bl-single-title { font-size: 30px; }
	.bl-form-layout { grid-template-columns: minmax(0,1fr) 320px; align-items: start; gap: 24px; }
	.bl-form-side { position: sticky; top: 96px; }
}

@media (min-width: 1000px) {
	.bl-side { display: flex; flex: 0 0 270px; flex-direction: column; gap: 18px; background: #fff; border-right: 1px solid var(--line); padding: 20px 14px; min-height: calc(100vh - 76px); }
	.bl-side-user { display: flex; align-items: center; gap: 10px; padding: 0 6px; }
	.bl-side-who { display: flex; flex-direction: column; line-height: 1.3; min-width: 0; }
	.bl-side-who b { font-size: 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.bl-side-who span { font-size: 12.5px; color: var(--muted-2); }
	.bl-snav { display: flex; flex-direction: column; gap: 2px; }
	.bl-snav a { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 0 12px; border-radius: 12px; font-weight: 500; color: var(--ink-2); }
	.bl-snav a:hover { background: var(--bg); }
	.bl-snav .bl-ic { width: 21px; height: 21px; color: var(--muted-2); }
	.bl-snav a.on { background: var(--green-tint); color: var(--green-dk); font-weight: 600; }
	.bl-snav a.on .bl-ic { color: var(--green); }
	.bl-side-card { margin-top: auto; background: var(--bg); border-radius: 14px; padding: 14px; font-size: 13.5px; color: var(--muted); }
	.bl-side-card b { display: block; color: var(--ink); font-size: 15px; margin-bottom: 4px; }
	.bl-tabstrip { display: none; }
	.bl-app-top { padding: 24px 28px 8px; }
	.bl-app-top h1 { font-size: 26px; }
	.bl-app-content { padding: 12px 28px 48px; gap: 20px; }
	.bl-cols { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); }
	.bl-stat { padding: 18px; }
	.bl-stat strong { font-size: 32px; }
	.bl-bn-dash { display: none; }
}

@media (max-width: 959px) {
	body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
}
@media (max-width: 999px) {
	.bl-is-dashboard .bl-bn-dash { display: grid; }
	body.bl-is-dashboard { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
	* { transition: none !important; }
}

/* ---------- Live feed, views, layout ---------- */
.bl-single-stats { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }
.bl-stat-pill { display: inline-flex; align-items: center; gap: 6px; background: var(--bg); border: 1px solid var(--line-2); border-radius: 999px; padding: 4px 12px; font-size: 14px; color: var(--muted); }
.bl-stat-pill .bl-ic { width: 16px; height: 16px; }
.bl-stat-pill b { color: var(--ink); font-weight: 700; }
.bl-live { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 600; color: #165C31; background: var(--green-tint); padding: 1px 9px 1px 7px; border-radius: 999px; vertical-align: middle; }
.bl-live i { width: 7px; height: 7px; border-radius: 50%; background: #16A34A; animation: bl-pulse 1.6s ease-out infinite; }
@keyframes bl-pulse { 0% { box-shadow: 0 0 0 0 rgba(22,163,74,.55); } 100% { box-shadow: 0 0 0 7px rgba(22,163,74,0); } }
.is-bump { animation: bl-bump .9s ease; border-radius: 4px; }
@keyframes bl-bump { 0% { background: #FDE68A; } 100% { background: transparent; } }

.bl-sec-tools { display: flex; align-items: center; gap: 10px; }
.bl-layout { display: inline-flex; background: #fff; border: 1px solid var(--line-2); border-radius: 12px; padding: 3px; }
.bl-layout button { width: 40px; height: 38px; border: 0; background: transparent; border-radius: 9px; color: var(--muted-2); display: inline-flex; align-items: center; justify-content: center; }
.bl-layout button[aria-pressed="true"] { background: var(--ink); color: #fff; }
.bl-sortbar { align-items: center; justify-content: space-between; gap: 12px; }

.bl-active-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; background: #FFF6E8; border: 1px solid #F3D9AE; border-radius: 12px; padding: 8px 14px; margin-bottom: 14px; font-size: 14.5px; font-weight: 600; color: #7A3306; }
.bl-active-filters[hidden], .bl-feed-empty[hidden], [data-bl-feed-more][hidden] { display: none; }
.bl-feed-more { display: flex; justify-content: center; margin-top: 18px; }
.bl-feed-more .bl-btn { min-width: 220px; }
.bl-feed [data-bl-feed-grid] { transition: opacity .2s; }
.bl-feed.is-loading [data-bl-feed-grid] { opacity: .45; pointer-events: none; }
.bl-feed.is-loading .bl-sec-hd h2::after, .bl-feed.is-loading .bl-sortbar::before { content: ''; display: inline-block; width: 16px; height: 16px; margin-left: 10px; border: 2px solid var(--line); border-top-color: var(--red); border-radius: 50%; animation: bl-spin .7s linear infinite; vertical-align: middle; }
@keyframes bl-spin { to { transform: rotate(360deg); } }

/* List layout */
.bl-grid.is-list { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: minmax(0,1fr); overflow: visible; scroll-snap-type: none; }
.bl-grid.is-list .bl-card { flex-direction: row; }
.bl-grid.is-list .bl-card-media { flex: 0 0 38%; aspect-ratio: auto; min-height: 100%; }
.bl-grid.is-list .bl-card-media img { height: 100%; }
.bl-grid.is-list .bl-fav { right: auto; left: calc(38% - 48px); }
.bl-grid.is-list .bl-card-body { padding: 12px; gap: 6px; }
.bl-grid.is-list .bl-card h3 { font-size: 16px; }
.bl-grid.is-list .bl-price strong { font-size: 19px; }
@media (max-width: 639px) {
	.bl-grid.is-list .bl-card-media { flex-basis: 36%; }
	.bl-grid.is-list .bl-fav { left: calc(36% - 48px); }
	.bl-grid.is-list .bl-row span:first-child { display: none; }
	.bl-grid.is-list .bl-seller { display: none; }
	.bl-grid.is-list .bl-unlock { min-height: 40px; font-size: 14px; }
	.bl-sec-hd { flex-wrap: wrap; }
}
@media (min-width: 960px) {
	.bl-grid.is-list { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.bl-grid-3.is-list { grid-template-columns: minmax(0,1fr); }
	.bl-grid-3.is-list .bl-card-media { flex-basis: 34%; }
	.bl-grid-3.is-list .bl-fav { left: calc(34% - 48px); }
}

/* ---------- Views badge (v1.3) ---------- */
.bl-card-stats { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.bl-views { position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px 3px 3px; border-radius: 999px; background: #F3F6FF; border: 1px solid #DDE5FB; color: #1E3A8A; font-size: 13px; line-height: 1; transition: box-shadow .3s, background .3s; }
.bl-views-ic { width: 24px; height: 24px; border-radius: 50%; background: #1E40AF; color: #fff; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.bl-views-ic .bl-ic { width: 14px; height: 14px; }
.bl-views b { font-weight: 700; font-size: 14px; font-variant-numeric: tabular-nums; min-width: 1ch; }
.bl-views small { font-size: 12.5px; color: #3B5BA9; font-weight: 500; }
.bl-views-lg { padding: 4px 14px 4px 4px; font-size: 15px; }
.bl-views-lg .bl-views-ic { width: 30px; height: 30px; }
.bl-views-lg .bl-views-ic .bl-ic { width: 17px; height: 17px; }
.bl-views-lg b { font-size: 17px; }
.bl-views-lg small { font-size: 14px; }
.bl-ago { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--muted-2); white-space: nowrap; }
.bl-ago .bl-ic { width: 14px; height: 14px; }
.bl-views.is-live-hit { background: #E8F7EE; border-color: #9AD7B0; color: #14532D; box-shadow: 0 0 0 4px rgba(22,163,74,.12); }
.bl-views.is-live-hit .bl-views-ic { background: #16A34A; animation: bl-eye .6s ease; }
.bl-views.is-live-hit small { color: #166534; }
@keyframes bl-eye { 0% { transform: scale(1); } 40% { transform: scale(1.25); } 100% { transform: scale(1); } }
.bl-plus { position: absolute; right: 6px; top: -4px; font-size: 12px; font-weight: 700; color: #fff; background: #16A34A; padding: 1px 7px; border-radius: 999px; pointer-events: none; animation: bl-float 1.5s ease-out forwards; box-shadow: 0 4px 10px rgba(22,163,74,.35); }
@keyframes bl-float { 0% { opacity: 0; transform: translateY(6px) scale(.8); } 15% { opacity: 1; transform: translateY(-6px) scale(1); } 75% { opacity: 1; transform: translateY(-18px); } 100% { opacity: 0; transform: translateY(-26px); } }

/* ---------- District chips + inline results ---------- */
.bl-dist a { position: relative; }
.bl-dist-n { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: var(--bg); color: var(--muted); font-size: 12px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; margin-left: 2px; }
.bl-dist a.is-on { background: var(--red); border-color: var(--red); color: #fff; box-shadow: 0 6px 16px rgba(158,42,27,.25); }
.bl-dist a.is-on .bl-ic { color: #fff; }
.bl-dist a.is-on .bl-dist-n { background: rgba(255,255,255,.22); color: #fff; }
.bl-dist a.is-on::after { content: ''; position: absolute; left: 50%; bottom: -9px; width: 12px; height: 12px; background: #fff; border-left: 1px solid var(--line-2); border-top: 1px solid var(--line-2); transform: translateX(-50%) rotate(45deg); z-index: 2; }
.bl-dist .bl-dist-all { color: var(--green); border-style: dashed; }
.bl-dist .bl-dist-all .bl-ic { color: var(--green); width: 16px; height: 16px; }
.bl-dist-panel { margin-top: 8px; background: #fff; border: 1px solid var(--line-2); border-radius: 18px; padding: 16px; animation: bl-panel .25s ease; box-shadow: 0 12px 30px rgba(31,26,23,.06); }
.bl-dist-panel[hidden] { display: none; }
@keyframes bl-panel { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.bl-dist-panel-hd { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.bl-dist-panel-hd h3 { font-size: 19px; font-weight: 700; line-height: 1.3; }
.bl-dist-panel-hd p { font-size: 14px; color: var(--muted-2); margin-top: 2px; }
.bl-dist-close { color: var(--muted); }
.bl-dist-empty { padding: 26px 12px; text-align: center; color: var(--muted-2); background: var(--bg); border-radius: 12px; }
.bl-dist-empty[hidden] { display: none; }

/* Skeleton while loading */
.bl-skel { pointer-events: none; }
.bl-skel-img { aspect-ratio: 16/10; background: #EFE9E4; }
.bl-skel .bl-card-body i { display: block; height: 12px; border-radius: 6px; background: #EFE9E4; width: 80%; }
.bl-skel .bl-card-body i.s { width: 50%; }
.bl-skel .bl-card-body i.b { height: 40px; width: 100%; margin-top: 10px; border-radius: 12px; }
.bl-skel-img, .bl-skel .bl-card-body i { background: linear-gradient(90deg, #EFE9E4 25%, #F7F3EF 50%, #EFE9E4 75%); background-size: 200% 100%; animation: bl-shimmer 1.2s infinite linear; }
@keyframes bl-shimmer { from { background-position: 200% 0; } to { background-position: -200% 0; } }
.bl-grid.is-list .bl-skel { flex-direction: row; }
.bl-grid.is-list .bl-skel-img { flex: 0 0 36%; aspect-ratio: auto; }

/* Phones: districts in one swipeable row */
@media (max-width: 639px) {
	.bl-dist { flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x proximity; margin: 0 -16px; padding: 2px 16px 14px; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 28px), transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 28px), transparent 100%); }
	.bl-dist::-webkit-scrollbar { display: none; }
	.bl-dist a { flex: none; scroll-snap-align: start; white-space: nowrap; }
	.bl-dist-panel { padding: 14px 12px; border-radius: 16px; }
	.bl-dist-panel-hd h3 { font-size: 17px; }
	.bl-dist-panel .bl-grid-scroll { grid-auto-columns: 82%; }
	.bl-card-stats { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
	.bl-plus, .bl-dist-panel, .bl-skel-img, .bl-skel .bl-card-body i { animation: none; }
}
