    body { font-family: math; padding: 16px; max-width: 900px; margin: auto; background-color: #d3d3d3;}
    .controls { margin-bottom: 12px; gap:8px; flex-wrap:wrap; align-items:center; text-align: center;}
    button { margin: 3px; padding:8px 12px; border-radius:6px; border:1px solid #888; background:#f3f3f3; cursor:pointer; }
    .tables { display:flex; flex-wrap:nowrap; gap:6px; overflow-x: auto; padding:8px; }
    .table-card { background-color: bisque; border:1px solid #ddd; padding:2px; border-radius:8px; box-shadow: 0 1px 3px rgba(0,0,0,0.04); min-width:185px; transition: transform .12s; }
    .table-card h4 { margin:0 0 8px 0; font-size:14px; text-align:center; }
    .cell { margin-bottom:2px; }

    /* Делает крестик очистки видимым */
    input[type="search"]::-webkit-search-cancel-button {
      -webkit-appearance: auto;
      cursor: pointer;
    }

    input[type="search"] {
      width:160px;
      box-sizing:border-box;
      padding:6px;
      border:1px solid #ccc;
      border-radius:4px;
      font-size:13px;
    }

    /* Подсветка сегодняшнего дня */
    .today-highlight {
        background-color: coral !important;
        box-shadow: 0 0 10px rgba(0,0,0,0.3);
    }
    .today-highlight h4 {
        color: white !important;
    }

    /* Подсветка выбранного дня */
    .selected-day {
      outline: 3px solid rgba(30,144,255,0.9);
      transform: translateY(-3px);
    }

    #fileInput { display: none; }

    /* Кнопки навигации */
    .nav-buttons { display:flex; gap:6px; align-items:center; margin-left:8px; }
    .current-label { font-size:1.5rem; margin-left:8px; min-width:160px; text-align:center; font-weight: bold; color: chocolate; bold; background-color: azure; padding: .4rem; border-radius: 5px;}
	
	.BtnControls{
		text-align: center;
	}
	
	#nextDayBtn, #prevDayBtn{
		color: cornflowerblue;
		font-size: 18px;
	}
	button:hover {
		background-color: gold;
	}
	

/* xs — телефоны */
@media (max-width: 575.98px) {
    body{
    min-width: 380px;
  }
  }

/* sm — маленькие планшеты */
@media (min-width: 576px) and (max-width: 767.98px) { 
    body{
    min-width: 750px;
  }
}

/* md — большие планшеты */
@media (min-width: 768px) and (max-width: 991.98px) { 
    body{
    min-width: 900px;
  }
}

/* lg — компьютеры */
@media (min-width: 992px) and (max-width: 1199.98px) {
  body{
    min-width: 1180px;
  }
}

/* xl — большие мониторы */
@media (min-width: 1200px) { 
    body{
    min-width: 1215px;
  }
}

/*Стили для уведомления "Сохранено!"*/
#saveNotify {
  text-align: center;
  position: fixed;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  background: #4caf50;
  color: white;
  padding: 8px 14px;
  border-radius: 6px;
  font-size: 15px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  display: none;
  z-index: 9999;
  animation: fadeOut 2s forwards;
}

/*Стили для уведомления "Недели"*/
#weekNotifyty {
  position: fixed;
  top: 20px;
  left: 50%;
  width: 300px;
  transform: translateX(-50%);
  background: cornflowerblue;
  color: white;
  padding: 8px 14px;
  border-radius: 6px;
  font-size: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  display: none;
  z-index: 9999;
  animation: fadeOut 2s forwards;
}

.weekNotifyty{
  text-align: center;
}

@keyframes fadeOut {
  0% { opacity: 1; }
  70% { opacity: 1; }
  100% { opacity: 0; }
}

.cell button {
	border: none;
	background: darkgray;
	font-size: 14px;
	cursor: pointer;
	padding: 1px;
	color: #3f51b5;
	width: 16px;
    border: 1px solid;
    border-radius: 5px;
}

.cell button:hover {
  background: rgba(0,0,0,0.1);
}

.fotos {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 400px; /* Задайте нужную высоту */
  overflow: hidden; /* Скрывает выходящие за рамку части изображения */
  position: relative;
  margin-bottom: 40px;
}

.fotos img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Изображение заполнит контейнер, обрезая края */
  object-position: center; /* Центрирует изображение */
}

.search-found {
  background: yellow;
  font-weight: bold;
  background: #fff3a0;
  border: 2px solid #ff9800;
}

.searchInputs{
	display: none;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

footer{
		text-align: center;
		position: fixed;
		bottom: 0;
		background: radial-gradient(circle, rgba(238, 174, 202, 1) 6%, rgba(148, 187, 233, 1) 100%);
		width: 100%;
		left: 0px;
	}