/* Telebot Floating Routing */

.floating-shell{
  display:grid;
  gap:16px;
}

.floating-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.floating-stat{
  padding:15px;
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(0,0,0,.10);
}

.floating-stat span{
  display:block;
  color:var(--text-muted);
  font-size:10px;
  font-weight:700;
}

.floating-stat strong{
  display:block;
  margin-top:7px;
  font-size:23px;
}

.floating-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.floating-tab{
  padding:9px 13px;
  border:1px solid var(--border);
  border-radius:9px;
  background:rgba(0,0,0,.10);
  color:var(--text-soft);
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}

.floating-tab.active{
  border-color:var(--accent);
  color:var(--text);
}

.floating-view{
  display:none;
}

.floating-view.active{
  display:block;
}

.floating-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}

.floating-wide{
  grid-column:1/-1;
}

.floating-check-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  max-height:300px;
  overflow:auto;
}

.floating-check{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:9px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:10px;
  background:rgba(0,0,0,.08);
  cursor:pointer;
}

.floating-check input{
  width:17px;
  height:17px;
}

.floating-check strong{
  display:block;
  font-size:11px;
}

.floating-check small{
  display:block;
  margin-top:2px;
  color:var(--text-muted);
  font-size:9px;
}

.floating-list{
  display:grid;
  gap:10px;
}

.floating-route-card,
.floating-group-card,
.floating-delivery-card{
  padding:13px;
  border:1px solid var(--border);
  border-radius:12px;
  background:rgba(0,0,0,.08);
}

.floating-card-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
}

.floating-card-title{
  font-size:13px;
  font-weight:800;
}

.floating-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
  margin-top:8px;
  color:var(--text-muted);
  font-size:10px;
}

.floating-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:11px;
}

.floating-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}

.floating-toolbar h3{
  margin:0;
}

.floating-info{
  padding:10px 11px;
  border:1px solid var(--border);
  border-radius:9px;
  color:var(--text-muted);
  font-size:10px;
}

.floating-hidden{
  display:none !important;
}

@media(max-width:850px){
  .floating-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  .floating-form,
  .floating-check-list{
    grid-template-columns:1fr;
  }

  .floating-card-top{
    display:block;
  }
}
