/* FlaroCity WatchTower Pass 21: customer-facing functionality and simple analytics. */
.watchtower-dashboard .grid.five{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.watchtower-dashboard .visitor-summary-stats,
.watchtower-dashboard .presence-summary-stats{margin:0}
.watchtower-dashboard .visitor-summary-stats .stat,
.watchtower-dashboard .presence-summary-stats .stat{min-height:105px}
.watchtower-dashboard .presence-summary-stats .stat b{
  font-size:clamp(18px,1.55vw,26px)!important;
  overflow-wrap:anywhere;
}
.watchtower-dashboard .presence-period-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(120px,1fr));
  gap:8px;
  max-width:620px;
  margin:12px auto;
}
.watchtower-dashboard .presence-period-tabs .btn{width:100%}
.watchtower-dashboard .presence-window-nav{
  display:grid;
  grid-template-columns:minmax(145px,auto) minmax(220px,1fr) minmax(145px,auto);
  gap:12px;
  align-items:center;
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:rgba(0,0,0,.28);
}
.watchtower-dashboard .presence-window-label{text-align:center}
.watchtower-dashboard .presence-window-label strong{
  display:block;
  color:#fff;
  font-size:18px;
}
.watchtower-dashboard .presence-window-label span{display:block;margin-top:3px}
.watchtower-dashboard .presence-source-note{margin:10px 0 0;text-align:center}
.watchtower-dashboard .presence-view-btn{min-height:34px;padding:0 11px;white-space:nowrap}
.watchtower-dashboard .presence-chart{margin-bottom:14px}
.watchtower-dashboard .presence-bars{min-width:520px}
.watchtower-dashboard .timeline-row{min-width:0}
.watchtower-dashboard .visitor-action-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  min-width:150px;
}
.watchtower-dashboard .visitor-action{
  min-height:30px;
  padding:0 9px;
  border-radius:5px;
  font-size:11px;
  line-height:1;
}
.watchtower-dashboard .warn-action{border-color:var(--cyan);color:var(--cyan)}
.watchtower-dashboard .kick-action{border-color:var(--orange);color:var(--orange)}
.watchtower-dashboard .ban-action{border-color:var(--red);color:var(--red)}
.watchtower-dashboard .unban-action{border-color:var(--green);color:var(--green)}
.watchtower-dashboard .security-return-link{margin:0 0 10px}
.watchtower-dashboard .security-return-link .btn{min-height:34px}
.watchtower-dashboard.dashboard-page-visitors .table-wrap,
.watchtower-dashboard.dashboard-page-place .table-wrap,
.watchtower-dashboard.dashboard-page-presence .table-wrap{border:1px solid rgba(255,255,255,.08)}

@media(max-width:1180px){
  .watchtower-dashboard .grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}
  .watchtower-dashboard .presence-summary-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .watchtower-dashboard .grid.five,
  .watchtower-dashboard .presence-summary-stats{grid-template-columns:1fr!important}
  .watchtower-dashboard .presence-period-tabs{grid-template-columns:1fr;max-width:none}
  .watchtower-dashboard .presence-window-nav{grid-template-columns:1fr;text-align:center}
  .watchtower-dashboard .presence-window-label{grid-row:1}
  .watchtower-dashboard .timeline-row{grid-template-columns:1fr}
  .watchtower-dashboard .presence-bars{min-width:420px}
  .watchtower-dashboard .visitor-action-buttons{min-width:0}
}
