@charset "UTF-8";
@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Shadows+Into+Light+Two&display=swap");
/* Conteneur principal */
#canteen-registration-calendar {
  width: 100%;
  font-family: 'Roboto', sans-serif;
  background: #fff;
  padding: 0; }
  #canteen-registration-calendar table tr td:nth-child(6),
  #canteen-registration-calendar table tr th:nth-child(6),
  #canteen-registration-calendar table tr td:nth-child(7),
  #canteen-registration-calendar table tr th:nth-child(7) {
    display: none; }

/* Supprimer arrondis et ombres */
.ui-datepicker {
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  padding: 0 !important; }

/* En-tête du mois */
.ui-datepicker-header {
  background-color: #2196F3;
  color: #fff;
  font-weight: 500;
  padding: 10px 0;
  text-align: center;
  border-radius: 0 !important;
  position: relative; }

/* Flèches navigation */
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-weight: bold;
  font-size: 1.2em;
  cursor: pointer;
  color: #fff;
  user-select: none;
  text-decoration: none; }

.ui-datepicker:hover .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next:hover {
  background: none;
  border: none;
  color: black; }

.ui-datepicker-prev {
  left: 10px; }

.ui-datepicker-next {
  right: 10px; }

/* Option : remplacer par des flèches Unicode si pas d'icône */
.ui-datepicker-prev::before {
  content: "◀"; }

.ui-datepicker-next::before {
  content: "▶"; }

/* Noms des jours */
.ui-datepicker th {
  color: #555;
  font-weight: 500;
  font-size: 0.9em;
  padding: 8px 0; }

/* Cases calendrier */
.ui-datepicker td {
  position: relative;
  width: 14.28%;
  height: 100px;
  text-align: left;
  vertical-align: top;
  font-weight: 700;
  font-size: 1.3em;
  box-sizing: border-box;
  border: none; }

.ui-datepicker td a:hover {
  background: none !important;
  color: inherit !important; }

.canteen-disabled a {
  color: #ccc !important;
  background-color: #f9f9f9 !important;
  cursor: default !important; }

.ui-state-default, .ui-state-active {
  background: none !important;
  border-radius: 0 !important;
  color: #333 !important; }

.canteen-yes a::after {
  content: "✔";
  bottom: 10px;
  color: #4CAF50;
  font-weight: bold;
  display: block;
  box-sizing: border-box;
  width: 100%; }

.ui-datepicker td a, .ui-datepicker td span {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 1.2em;
  text-decoration: none;
  padding: 10px;
  box-sizing: border-box;
  font-size: 1.7em;
  text-align: center; }

.ui-datepicker table {
  border-collapse: collapse;
  width: 100%; }

/* Mobile */
@media (max-width: 480px) {
  .ui-datepicker td {
    height: 60px; }

  .ui-datepicker td a {
    line-height: 1.2em; } }
/* Conteneur centré */
.user-login-form {
  max-width: 400px;
  margin: 50px auto;
  padding: 2rem;
  background: #fff;
  border-radius: .5rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1); }

/* Labels */
.user-login-form label {
  font-weight: 500;
  margin-bottom: .25rem;
  display: inline-block; }

/* Champs */
.user-login-form input[type="text"],
.user-login-form input[type="email"],
.user-login-form input[type="password"] {
  width: 100%;
  padding: .5rem .75rem;
  border: 1px solid #ced4da;
  border-radius: .375rem;
  margin-bottom: 1rem; }

/* Bouton */
.user-login-form input[type="submit"] {
  width: 100%;
  padding: .5rem;
  font-weight: 500; }

/* Lien mot de passe oublié */
.user-login-form .description,
.user-login-form a {
  display: block;
  margin-top: .75rem;
  font-size: .875rem;
  text-align: center;
  color: #6c757d; }

body {
  font-family: "Noto Sans", sans-serif; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Shadows Into Light Two", cursive; }

#main-header {
  background-color: #d7d9dd; }

.main-hero img {
  max-width: 150px;
  height: auto; }
.main-hero .hero-image {
  max-width: 150px;
  height: auto; }

.student-teaser {
  position: relative; }
  .student-teaser a {
    text-decoration: none; }
    .student-teaser a:hover {
      opacity: 0.8; }
  .student-teaser img {
    max-width: 100%; }
  .student-teaser .firstname, .student-teaser .lastname {
    color: #333;
    text-align: center;
    font-size: 1.3em;
    line-height: 1.2; }
  .student-teaser .badge {
    position: absolute;
    top: 10px;
    right: 8px; }

.canteen-list-form, .canteen-accounting-form {
  display: flex;
  margin-bottom: 20px; }
  .canteen-list-form input[type=date], .canteen-list-form select, .canteen-accounting-form input[type=date], .canteen-accounting-form select {
    width: 200px;
    margin-right: 10px; }

.badge a {
  color: inherit;
  text-decoration: none; }

.emergency-contacts ul {
  list-style-type: none;
  list-style-position: inside;
  padding: 0; }
  .emergency-contacts ul li {
    margin-bottom: 10px; }
.emergency-contacts .tel-badge {
  font-size: 0.9em;
  background-color: var(--dark); }

table {
  border-collapse: collapse;
  width: 100%; }
  table td, table th {
    border: 1px solid #DDD;
    padding: 5px 10px; }
  table th {
    background-color: #CCC; }
  table tbody tr:nth-child(even) {
    background-color: #EEE; }

/*@include media-breakpoint-up(sm) {
  .main-hero > .col-* {
    text-align: center;
  }
}
*/
.user-login-form span.form-text {
  display: none; }
.user-login-form .form-item {
  margin-bottom: 2rem; }

/*# sourceMappingURL=main.css.map */
