[object Object]

← back to Nationalrealestate

auto-save: 2026-07-26T16:44:36 (2 files) — public/crcp-grid.css public/crcp-grid.js

02bd28c4c26dbdad4d337609e19ce2097361e03c · 2026-07-26 16:44:37 -0700 · Steve Abrams

Files touched

Diff

commit 02bd28c4c26dbdad4d337609e19ce2097361e03c
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Sun Jul 26 16:44:37 2026 -0700

    auto-save: 2026-07-26T16:44:36 (2 files) — public/crcp-grid.css public/crcp-grid.js
---
 public/crcp-grid.css | 13 ++++++++++++-
 public/crcp-grid.js  |  1 +
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/public/crcp-grid.css b/public/crcp-grid.css
index b6fe097..a07f4a8 100644
--- a/public/crcp-grid.css
+++ b/public/crcp-grid.css
@@ -66,7 +66,18 @@
 .cg-tbl tr.red td{background:rgba(248,81,73,.07);}
 .cg-la{font-weight:600;color:var(--cg-ink,#e6edf3);}
 .cg-lc{color:var(--cg-mut,#8b949e);font-size:11px;}
-@media(max-width:820px){.cg-rail{display:none;}}
+/* mobile filter access: rail becomes an off-canvas drawer opened by the .cg-filt-btn */
+.cg-filt-btn{display:none;align-items:center;gap:6px;background:var(--cg-card,#161b22);color:var(--cg-ink,#e6edf3);
+  border:1px solid var(--cg-acc,#58a6ff);border-radius:8px;padding:8px 12px;font-size:13px;cursor:pointer;white-space:nowrap;}
+.cg-rail-backdrop{position:fixed;inset:0;z-index:1250;background:rgba(0,0,0,.5);opacity:0;visibility:hidden;transition:opacity .2s;}
+.cg-rail-backdrop.open{opacity:1;visibility:visible;}
+@media(max-width:820px){
+  .cg-filt-btn{display:inline-flex;}
+  .cg-top{padding-left:66px;} /* clear the fixed upper-left hamburger */
+  .cg-rail{position:fixed;top:0;left:0;height:100%;width:290px;max-width:86vw;z-index:1300;
+    transform:translateX(-100%);transition:transform .22s ease;box-shadow:2px 0 22px rgba(0,0,0,.55);}
+  .cg-rail.open{transform:translateX(0);}
+}
 /* --- USRE adaptations (nationalrealestate) --- */
 .cg-sort{background:var(--cg-card,#161b22);color:var(--cg-ink,#e6edf3);border:1px solid var(--cg-line,#2a313c);border-radius:8px;padding:8px 10px;font-size:13px;}
 .cg-sortth{cursor:pointer;user-select:none;}
diff --git a/public/crcp-grid.js b/public/crcp-grid.js
index 2bd9488..c14686f 100644
--- a/public/crcp-grid.js
+++ b/public/crcp-grid.js
@@ -249,6 +249,7 @@
         `<option value="${esc(f.k)}:desc">${esc(f.l)} ↓</option><option value="${esc(f.k)}:asc">${esc(f.l)} ↑</option>`).join('');
       m.insertAdjacentHTML('afterbegin',
         `<div class="cg-top">` +
+        `<button type="button" class="cg-filt-btn" aria-label="Filters">☰ Filters</button>` +
         `<input type="text" class="cg-q" placeholder="search…">` +
         `<select class="cg-sort" title="Sort">${sortOpts}</select>` +
         `<span class="cg-seg"><button data-view="grid" class="${VIEW === 'grid' ? 'active' : ''}">▦ Grid</button><button data-view="list" class="${VIEW === 'list' ? 'active' : ''}">☰ List</button></span>` +

← 6924dcd USRE nav: render one canonical nav across all pages via nav-  ·  back to Nationalrealestate  ·  USRE grid: mobile filter access — rail opens as off-canvas d d9054bf →