/* V2 shared component — searchable, category-filtered accordion list
   (Economic Calendar "reports explained", Glossary). Behaviour: js/v2-filter-list.js */

.fl-controls{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;
  padding:18px 22px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);
  margin-bottom:24px;
}
.fl-search{position:relative;flex:1 1 260px;min-width:0;max-width:360px;}
.fl-search input{
  width:100%;padding-block:11px;padding-inline:40px 16px;border-radius:100px;border:1px solid var(--border);
  background:var(--surface-solid);color:var(--text);font-size:14px;font-family:'Inter',sans-serif;
  -webkit-appearance:none;appearance:none;
}
.fl-search input::placeholder{color:var(--text-faint);}
.fl-search input:focus{outline:none;border-color:var(--border-strong);}
.fl-search svg{
  position:absolute;inset-inline-start:14px;top:50%;transform:translateY(-50%);
  width:16px;height:16px;color:var(--text-faint);pointer-events:none;
}
.fl-chips{display:flex;flex-wrap:wrap;gap:8px;}
.fl-chip{
  font-size:13px;font-weight:600;color:var(--text-mute);background:var(--surface-solid);
  border:1px solid var(--border);padding:8px 16px;border-radius:100px;cursor:pointer;
  transition:color .15s,border-color .15s,background .15s;white-space:nowrap;font-family:inherit;
}
.fl-chip:hover{color:var(--text);border-color:var(--border-strong);}
.fl-chip.is-active{color:var(--bg);background:linear-gradient(135deg,var(--gold-2),var(--gold));border-color:transparent;}
.fl-count{font-size:13px;color:var(--text-faint);white-space:nowrap;}

.fl-list{display:flex;flex-direction:column;gap:10px;margin-bottom:8px;}
.fl-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;}
.fl-item[open]{border-color:var(--border-strong);}
.fl-item summary{
  list-style:none;cursor:pointer;padding:18px 22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;
}
.fl-item summary::-webkit-details-marker{display:none;}
.fl-item summary:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;}
.fl-cat{
  font-size:11.5px;font-weight:600;color:var(--text-faint);border:1px solid var(--border);
  padding:4px 10px;border-radius:100px;white-space:nowrap;flex:0 0 auto;
}
.fl-chev{flex:0 0 auto;width:16px;height:16px;color:var(--text-faint);transition:transform .18s ease;margin-inline-start:auto;}
.fl-item[open] .fl-chev{transform:rotate(180deg);}
.fl-body{padding:0 22px 22px;border-top:1px solid var(--border);}
.fl-body p{color:var(--text-mute);font-size:14.5px;line-height:1.75;margin:0;max-width:74ch;}
.fl-nores{text-align:center;color:var(--text-faint);font-size:14px;padding:32px 0;}

@media (prefers-reduced-motion: reduce){
  .fl-chev,.fl-chip{transition:none;}
}
@media (max-width:900px){
  .fl-controls{flex-direction:column;align-items:stretch;}
  .fl-search{flex:1 1 auto;max-width:none;}
  .fl-item summary{padding:16px 18px;gap:10px;}
  .fl-body{padding:0 18px 18px;}
}
@media (max-width:640px){
  .fl-cat{order:3;}
  .fl-chev{order:4;}
}
