
.bg-fleatale { background-color: #eef2f7; }
.card-login {
  border-radius: 1rem;
  border: 1px solid #ccc; 
  box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.1);
  background: #fff;
max-width: 960px;
  margin: auto;
}
.banner-wrapper img { width: 100%; border-top-left-radius: 1rem; border-top-right-radius: 1rem; }
.schedule-table th,.schedule-table td {
  text-align:center; vertical-align:middle; font-size:1.0rem; padding:0em 0em; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis;
}
.weekday-header { background-color:#e6f2ff !important; color:#000; }
.weekend-header { background-color:#fcd4db !important; color:#000; }
.schedule-table td.business-hours { background-color:#fff9d6 !important; color:#333; }
.day-cell { color:#fff !important; font-weight:bold; }
.day-cell.rest { background-color:#fff !important; color:#555 !important; font-weight:bold; border:1px solid #ddd; }
.link-icon { font-size:1.2em; cursor:pointer; text-decoration:none; margin:0 2px; }
.link-icon:hover { transform:scale(1.08); }
.page-item { opacity:0; transform:translateX(-20px); animation:slideInRight 0.6s ease forwards; }
@keyframes slideInRight { to { opacity:1; transform:translateX(0); } }
.table-scroll-wrapper { position: relative; margin-top:1rem; }
.scroll-hint { font-size:0.85rem; color:#666; text-align:center; margin-bottom:4px; }
.table-scroll-top { overflow-x:auto; overflow-y:hidden; }
.table-scroll-top div { height:1px; }
.table-scroll-body { overflow-x:auto; }
.stats-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5em;
  line-height: 1.6;
}
.stat-item {
  display: inline-block;
  white-space: nowrap;
  font-size: 0.85rem;
}
.stat-item strong {
  font-size: 1.2rem;
}
.stat-total { color: #D26AC7; }
.stat-chain-systems { color: #0072ff; }
.stat-chain-count { color: #08b300; }
.stat-individual { color: #6C757D; }
.stat-online { color: #fe6600; }
.schedule-table td.rest-description {
  white-space: normal !important;   
  word-break: break-word;           
  overflow: visible !important;     
  text-overflow: clip !important;   
}
.photo-note {
  font-size: 0.85rem;
  color: #000000;
  text-align: center;
  line-height: 1.6; 
  transform: translateY(0px);
  white-space: normal; 
  word-break: break-word; 
}
.stat-filtered { color: #9C27B0; } 
.breadcrumb-nav {margin-top: -5px;margin-bottom: 25px;margin-left: 8px;}