:root{
  --af-blue:#0b4fb4;        /* elegant primary */
  --af-blue-600:#083b86;
  --af-yellow:#ffd200;      /* accent */
  --af-ink:#0b0f1a;         /* headings */
  --af-text:#2b2f3a;        /* body text */
  --af-sub:#6b7280;         /* subdued text */
  --af-bg:#f7f8fb;          /* page background */
  --af-card:#ffffff;
  --af-border:#e5e7eb;
  --radius:14px;
  --shadow:0 6px 16px rgba(11,15,26,.07);
}

*{box-sizing:border-box}
body.af-body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--af-text);background:var(--af-bg)}

.af-topbar{background:#fff}
.af-logo-circle{width:28px;height:28px;border-radius:50%;background:var(--af-blue);box-shadow:inset 0 0 0 4px var(--af-yellow)}
.af-brand{color:var(--af-ink);letter-spacing:.2px}

.af-link{color:var(--af-ink);text-decoration:none;font-weight:500}
.af-link:hover{color:var(--af-blue)}

.af-link-muted{color:var(--af-sub);text-decoration:none}
.af-link-muted:hover{color:var(--af-ink)}

.af-btn-primary{background:var(--af-blue);color:#fff;border:none;padding:.6rem 1rem;border-radius:.6rem}
.af-btn-primary:hover{background:var(--af-blue-600)}
.af-btn-outline{border:1px solid var(--af-border);color:var(--af-ink);padding:.45rem .9rem;border-radius:.6rem;background:#fff}
.af-btn-outline:hover{border-color:var(--af-blue);color:var(--af-blue)}

.af-search{gap:.5rem;min-width:480px}
.af-search-input{border-radius:.6rem;border:1px solid var(--af-border)}

.af-subnav{position:sticky;top:0;background:#fff;z-index:1000}
.af-chip{display:inline-block;padding:.35rem .7rem;border-radius:999px;border:1px solid var(--af-border);text-decoration:none;color:var(--af-ink);background:#fff}
.af-chip:hover{border-color:var(--af-blue);color:var(--af-blue)}

.af-card{background:var(--af-card);border:1px solid var(--af-border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.af-card-img{width:100%;height:190px;object-fit:cover;background:#e9eef9}
.af-card-body{padding:1rem}
.af-price{font-weight:800;color:var(--af-ink);font-size:1.25rem}
.af-specs{color:var(--af-sub);font-size:.9rem}
.af-badge{background:#e8f1ff;color:var(--af-blue);font-weight:600;padding:.2rem .5rem;border-radius:.4rem;font-size:.78rem}

.af-filters{position:sticky;top:70px}
.af-filter-block{background:#fff;border:1px solid var(--af-border);border-radius:12px;padding:1rem;margin-bottom:1rem}

.af-footer{background:#fff;border-top:1px solid var(--af-border)}
