.badge-search__wrap{ max-width:1100px; margin:0 auto; }
  .badge-search__panel{
    background:rgba(255,255,255,.75);
    border:1px solid rgba(10,20,30,.10);
    border-radius:16px;
    padding:18px;
    box-shadow:0 8px 20px rgba(0,0,0,.06);
    backdrop-filter:blur(6px);
  }
  .badge-search__panel + .badge-search__panel{ margin-top:14px; }

  .badge-search__mode{
    display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-bottom:10px;
  }
  .badge-search__mode label{
    display:inline-flex; align-items:center; gap:6px;
    padding:6px 10px; border-radius:999px;
    border:1px solid rgba(10,20,30,.12);
    background:rgba(255,255,255,.65);
    cursor:pointer;
    font-size:13px;
    line-height:1.2;
  }
  .badge-search__mode input{
    width:14px;
    height:14px;
    transform: translateY(1px);
  }

  .badge-search__grid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap:12px;
  }
  @media (max-width:900px){ .badge-search__grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
  @media (max-width:560px){ .badge-search__grid{ grid-template-columns: 1fr; } }

  .badge-group{
    border:1px solid rgba(10,20,30,.10);
    border-radius:14px;
    padding:12px;
    background:rgba(255,255,255,.60);
  }
  .badge-group__title{
    font-size:14px;
    font-weight:700;
    margin:0 0 8px;
    display:flex;
    gap:8px;
    align-items:center;
    color:rgba(10,20,30,.88);
  }
  .badge-items{ display:flex; flex-wrap:wrap; gap:6px; }

  .badge-check{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:5px 8px;
    border-radius:999px;
    border:1px solid rgba(10,20,30,.12);
    background:rgba(255,255,255,.70);
    cursor:pointer;
    user-select:none;
    font-size:13px;
    line-height:1.2;
    transition: transform .08s ease, box-shadow .12s ease, background .12s ease;
  }
  .badge-check:hover{ transform: translateY(-1px); box-shadow:0 10px 18px rgba(0,0,0,.06); }
  .badge-check input{
    width:14px;
    height:14px;
    transform: translateY(1px);
  }
  .badge-check .badge-ico{
    width:16px;
    text-align:center;
    opacity:.95;
    font-size:14px;
    line-height:1;
  }
  .badge-check.is-on{
    background: rgba(21,101,192,.10);
    border-color: rgba(21,101,192,.35);
  }

  .badge-search__actions{
    display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-top:10px;
  }
  .badge-search__actions .button{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    padding:10px 14px; border-radius:12px;
    border:1px solid rgba(10,20,30,.18);
    background:rgba(255,255,255,.82);
    text-decoration:none; cursor:pointer; font-weight:700;
  }
  .badge-search__actions .button-primary{
    border-color: rgba(21,101,192,.35);
    background: rgba(21,101,192,.10);
  }
  .badge-search__actions .button:hover{
    box-shadow:0 10px 18px rgba(0,0,0,.06);
    transform: translateY(-1px);
  }

  body.theme-dark .badge-search__panel,
  body.theme-night .badge-search__panel{
    background: rgba(16, 20, 26, .62);
    border-color: rgba(255,255,255,.12);
    box-shadow: 0 12px 24px rgba(0,0,0,.35);
  }
  body.theme-dark .badge-group,
  body.theme-night .badge-group{
    background: rgba(16, 20, 26, .42);
    border-color: rgba(255,255,255,.10);
  }
  body.theme-dark .badge-group__title,
  body.theme-night .badge-group__title{
    color: rgba(255,255,255,.92);
  }
  body.theme-dark .badge-check,
  body.theme-night .badge-check{
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.14);
    color: rgba(255,255,255,.92);
  }
  body.theme-dark .badge-check.is-on,
  body.theme-night .badge-check.is-on{
    background: rgba(66, 165, 245, .18);
    border-color: rgba(66, 165, 245, .35);
  }
