/* Mantra filter controls; role geometry lives in roles.css. */
/* Compact category controls: TUTTI + five abbreviated families = two rows of three. */
html body.liveasta-mantra .mantra-role-filter-row{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:4px!important;
  width:100%!important;
}
html body.liveasta-mantra .mantra-role-filter-row :is(.unified-role-all,.unified-role){
  min-width:0!important;
  min-height:44px!important;
  padding:5px 2px!important;
  margin:0!important;
  border-radius:10px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  overflow:hidden!important;
  white-space:normal!important;
  line-height:1!important;
  touch-action:manipulation!important;
  -webkit-user-select:none!important;
  user-select:none!important;
}
html body.liveasta-mantra .mantra-role-filter-row .unified-role > span{
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.35px!important;
}
html body.liveasta-mantra .mantra-role-filter-row .unified-role > small{
  display:block!important;
  width:100%!important;
  min-height:10px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:8px!important;
  font-weight:850!important;
  opacity:.9!important;
}
html body.liveasta-mantra .mantra-role-filter-row .unified-role.partial{
  opacity:1!important;
  outline:2px dashed color-mix(in srgb,currentColor 60%,transparent)!important;
  outline-offset:-4px!important;
}
html body.liveasta-mantra .mantra-role-filter-row .unified-role.off{
  opacity:.42!important;
  box-shadow:none!important;
}

/* Long-press drawer. */
html body.liveasta-mantra .mantra-subfilter-panel{
  width:100%!important;
  margin:8px 0 2px!important;
  padding:10px!important;
  box-sizing:border-box!important;
  border:1px solid var(--theme-border)!important;
  border-radius:12px!important;
  background:var(--theme-input)!important;
  color:var(--theme-text)!important;
}
html body.liveasta-mantra .mantra-subfilter-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:8px!important;
}
html body.liveasta-mantra .mantra-subfilter-head > div{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  text-align:left!important;
}
html body.liveasta-mantra .mantra-subfilter-head b{font-size:13px!important;}
html body.liveasta-mantra .mantra-subfilter-head small{font-size:10px!important;color:var(--theme-muted)!important;}
html body.liveasta-mantra .mantra-subfilter-close{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid var(--theme-border)!important;
  border-radius:9px!important;
  background:transparent!important;
  color:var(--theme-text)!important;
  font-size:20px!important;
}
html body.liveasta-mantra .mantra-subfilter-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:6px!important;
}
html body.liveasta-mantra .mantra-subfilter-token{
  min-width:0!important;
  min-height:38px!important;
  padding:7px 4px!important;
  border-radius:9px!important;
  font-size:12px!important;
  font-weight:900!important;
  opacity:.42!important;
}
html body.liveasta-mantra .mantra-subfilter-token.selected{
  opacity:1!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)!important;
}

@media(max-width:380px){
  html body.liveasta-mantra .mantra-role-filter-row{gap:3px!important;}
  html body.liveasta-mantra .mantra-role-filter-row :is(.unified-role-all,.unified-role){min-height:42px!important;}
}

html body.liveasta-mantra .mantra-role-filter-row .unified-role-all{font-size:9px!important;font-weight:950!important;opacity:.48!important;}
html body.liveasta-mantra .mantra-role-filter-row .unified-role-all.selected,html body.liveasta-mantra .mantra-role-filter-row .unified-role-all[aria-pressed="true"]{opacity:1!important;background:var(--theme-primary)!important;color:var(--theme-bg-deep)!important;border-color:var(--theme-primary)!important;}
