/* ── Hero ── */
.al-hero {
    background: linear-gradient(135deg,#1e293b 0%,#0f172a 100%);
    padding: 64px 0 48px;
    position: relative;
    overflow: hidden;
}
.al-hero::before {
    content:'';
    position:absolute;
    top:-60px;right:-60px;
    width:320px;height:320px;
    border-radius:50%;
    background:rgba(249,115,22,.12);
}
.al-hero-eyebrow {
    display:inline-flex;align-items:center;gap:8px;
    background:rgba(249,115,22,.15);
    color:#f97316;
    border:1px solid rgba(249,115,22,.3);
    border-radius:20px;
    padding:5px 14px;
    font-size:12px;font-weight:700;letter-spacing:.5px;
    margin-bottom:16px;
    margin-top:10px;
}
.al-hero h1 { font-size:clamp(28px,4vw,42px);font-weight:800;color:#fff;margin-bottom:10px; }
.al-hero h1 span { color:#f97316; }
.al-hero p { color:#94a3b8;font-size:15px;margin-bottom:28px; }
.al-hero-stats { display:flex;gap:28px;flex-wrap:wrap; }
.al-hero-stat-num { font-size:26px;font-weight:800;color:#fff; }
.al-hero-stat-num span { color:#f97316; }
.al-hero-stat-lbl { font-size:11px;color:#94a3b8;font-weight:600;letter-spacing:.5px;text-transform:uppercase; }

/* ── Layout ── */
.al-layout { background:var(--clr-bg,#f8fafc);min-height:60vh;padding:32px 0 60px; }
.al-wrap { display:grid;grid-template-columns:260px 1fr;gap:28px;max-width:1320px;margin:0 auto;padding:0 20px; }
@media(max-width:900px){ .al-wrap{grid-template-columns:1fr;} .al-sidebar{display:none;} }

/* ── Sidebar ── */
.al-sidebar { background:#fff;border-radius:14px;box-shadow:0 2px 16px rgba(0,0,0,.06);padding:20px;height:fit-content;position:sticky;top:80px; }
.al-sidebar-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:12px;border-bottom:1.5px solid var(--clr-border,#e2e8f0); }
.al-sidebar-head-title { font-size:14px;font-weight:700;color:var(--clr-dark,#1e293b);display:flex;align-items:center;gap:6px; }
.al-fgroup { margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--clr-border,#e2e8f0); }
.al-fgroup:last-child { border-bottom:none;margin-bottom:0; }
.al-flabel { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--clr-muted,#64748b);margin-bottom:10px;display:flex;align-items:center;gap:6px; }
.al-chk-item { display:flex;align-items:center;gap:8px;padding:5px 0;cursor:pointer; }
.al-chk-item input[type=checkbox] { accent-color:#f97316;width:15px;height:15px;cursor:pointer; }
.al-chk-item label { font-size:13px;color:var(--clr-dark,#1e293b);cursor:pointer; }
.al-chk-item.al-chk-all { padding-bottom:8px;margin-bottom:4px;border-bottom:1px dashed var(--clr-border,#e2e8f0); }
.al-input { box-sizing:border-box;width:100%;min-width:0;border:1.5px solid var(--clr-border,#e2e8f0);border-radius:8px;padding:8px 12px;font-size:13px;outline:none;transition:border-color .2s; }
.al-input:focus { border-color:#f97316; }
.al-select { box-sizing:border-box;width:100%;min-width:0;border:1.5px solid var(--clr-border,#e2e8f0);border-radius:8px;padding:8px 12px;font-size:13px;outline:none;background:#fff;cursor:pointer; }
.al-price-row { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.al-price-row > div { min-width:0; }
.al-ilabel { font-size:11px;color:var(--clr-muted,#64748b);font-weight:600;display:block;margin-bottom:4px; }
.al-sidebar-actions { display:flex;flex-direction:column;gap:8px;margin-top:4px; }
.al-date-note { margin-top:8px;font-size:11px;color:#16a34a;font-weight:600;display:flex;align-items:center;gap:5px; }
.al-apply-btn { background:#f97316;color:#fff;border:none;border-radius:8px;padding:10px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .2s; }
.al-apply-btn:hover { background:#ea6c0a; }
.al-clear-btn { background:#fff;color:var(--clr-muted,#64748b);border:1.5px solid var(--clr-border,#e2e8f0);border-radius:8px;padding:10px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px; }

/* ── Main ── */
.al-topbar { display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px; }
.al-count { font-size:14px;font-weight:600;color:var(--clr-dark,#1e293b); }
.al-sort-group { display:flex;align-items:center;gap:8px; }
.al-sort-label { font-size:12px;color:var(--clr-muted,#64748b);font-weight:600; }
.al-sort-pill { border:1.5px solid var(--clr-border,#e2e8f0);background:#fff;border-radius:20px;padding:5px 14px;font-size:12px;font-weight:600;cursor:pointer;color:var(--clr-dark,#1e293b);transition:all .2s; }
.al-sort-pill.active,.al-sort-pill:hover { background:#f97316;border-color:#f97316;color:#fff; }

/* ── Skeleton ── */
.al-skeleton-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px; }
.al-skel { background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.05); }
.al-skel-img { height:160px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:400% 100%;animation:shimmer 1.4s ease infinite; }
.al-skel-body { padding:14px; }
.al-skel-line { height:12px;border-radius:6px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;margin-bottom:8px; }
.al-skel-line.short { width:60%; }
@keyframes shimmer { 0%{background-position:100% 0} 100%{background-position:-100% 0} }

/* ── Product Grid ── */
.al-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px; }
.al-card { background:#fff;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.06);overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer; }
.al-card:hover { transform:translateY(-4px);box-shadow:0 8px 28px rgba(0,0,0,.12); }
.al-card-img { position:relative;height:160px;overflow:hidden;background:#f8fafc; }
.al-card-img img { width:100%;height:100%;object-fit:cover;transition:transform .3s; }
.al-card:hover .al-card-img img { transform:scale(1.05); }
.al-badge-sale { position:absolute;top:10px;left:10px;background:#16a34a;color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px; }
.al-badge-cat { position:absolute;top:10px;right:10px;background:rgba(0,0,0,.5);color:#fff;font-size:10px;font-weight:600;padding:3px 8px;border-radius:20px; }
.al-card-body { padding:14px; }
.al-card-title { font-size:14px;font-weight:700;color:var(--clr-dark,#1e293b);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.al-card-brand { font-size:11px;color:var(--clr-muted,#64748b);margin-bottom:10px; }
.al-price-block { display:flex;align-items:center;justify-content:space-between;margin-bottom:12px; }
.al-price-rent { font-size:15px;font-weight:800;color:#f97316; }
.al-price-rent sub { font-size:10px;font-weight:600; }
.al-price-sale { font-size:12px;color:var(--clr-muted,#64748b);text-decoration:line-through; }
.al-price-sale-active { font-size:12px;color:#16a34a;font-weight:700; }
.al-card-btns { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.al-btn-rent { background:#f97316;color:#fff;border:none;border-radius:8px;padding:8px;font-size:12px;font-weight:700;cursor:pointer;transition:background .2s; }
.al-btn-rent:hover { background:#ea6c0a; }
.al-btn-buy { background:#fff;color:#f97316;border:1.5px solid #f97316;border-radius:8px;padding:8px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s; }
.al-btn-buy:hover { background:#fff7ed; }
.al-btn-view { grid-column:span 2;background:#f8fafc;color:var(--clr-dark,#1e293b);border:1.5px solid var(--clr-border,#e2e8f0);border-radius:8px;padding:8px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s; }
.al-btn-view:hover { border-color:#f97316;color:#f97316; }

/* ── Empty ── */
.al-empty { text-align:center;padding:60px 20px;color:var(--clr-muted,#64748b); }
.al-empty i { font-size:48px;margin-bottom:16px;display:block;color:#cbd5e1; }
.al-empty h5 { font-size:18px;font-weight:700;color:var(--clr-dark,#1e293b);margin-bottom:8px; }

/* ── Color filter chips (sidebar) ── */
.al-color-filter-chips { display:flex;flex-wrap:wrap;gap:6px; }
.al-color-chip-filter { display:flex;align-items:center;gap:6px;padding:4px 10px 4px 6px;border:1.5px solid var(--clr-border,#e2e8f0);border-radius:20px;cursor:pointer;font-size:12px;font-weight:600;color:var(--clr-dark,#1e293b);transition:all .18s;background:#fff; }
.al-color-chip-filter.active { border-color:#f97316;background:#fff7ed;color:#f97316; }
.al-color-chip-filter:hover { border-color:#f97316; }
.al-color-dot { display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.12);flex-shrink:0; }
.al-color-chip-label { white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px; }

/* ── Variant badges on product cards ── */
.al-variant-badges { display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px; }
.al-variant-badge { display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:var(--clr-muted,#64748b);background:#f1f5f9;border-radius:10px;padding:2px 8px; }

/* ── Active filter tags in topbar ── */
.al-active-filters { display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:10px; }
.al-filter-tag { display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;background:#fff7ed;color:#f97316;border:1px solid rgba(249,115,22,.3);border-radius:20px;padding:2px 8px; }
.al-filter-tag i { cursor:pointer;font-size:9px;opacity:.7; }
.al-filter-tag i:hover { opacity:1; }
.al-filter-dot { display:inline-block;width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.15); }

/* ── Pagination ── */
.al-pagination-bar { display:flex;align-items:center;justify-content:space-between;margin-top:28px;flex-wrap:wrap;gap:12px; }
.al-page-info { font-size:13px;color:var(--clr-muted,#64748b); }
