/* :root {
    --bs-primary: #ff5733;
    --bs-secondary: #33c3ff;
    --bs-success: #28a745;
    --bs-info: #17a2b8;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #343a40;
} */

.bg-image {
     background-image: url('/static/assets/PSYK-1.png');
     height: 100vh;
     background-repeat: no-repeat center center;
    
}
.mask {
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
}
.login-form{
    width: 410px;
    margin-top:25%;
}
.user-info{
  font-size: 15px !important;
  color: gainsboro !important;
}
.minheight{
  min-height: 40px
}
.basware{
  min-width: 130px;
  max-width: 130px;
}
@media screen and (max-width: 576px) {
  .login-form {
    width: 90%;
    margin-top:30%;
  }
  .dropdown-toggle {
    width: 100%;
  }
  .btn-outline-warning {
    width: 100%;
  }
  #menubutton {
    margin-bottom: 1rem;
  }

}
.card-register {
    max-width: 700px;
}

.sticky {
  position: -webkit-sticky;
  /* Safari */
  position: sticky;
  top: 0;
}

@media print{
  button {
      display: none !important;
      height: 0;
    }
}
@media print {
    .no-print {
        display: none !important;
    }
}
@media print {
    .table-responsive {
      display: table !important;
      width: auto !important;
      overflow: visible !important;
    }
    body {
      margin: 20mm; /* Adjust the margin size as needed */
    }
    table {
      width: 100% !important;
      table-layout: fixed !important;
      font-size: 11px;
    }
    th, td {
      word-wrap: break-word;
    }
  }
@media print {
    canvas {
      width: 100% !important; /* Ensure the canvas takes the full width of the container */
      height: auto !important; /* Maintain the aspect ratio */
      }
    .page-break {
      page-break-before: always;
    }
  }

.hover-rows:hover {
    background-color:var(--bs-secondary) !important;
    color: white;
}
.hover-rows {
    transition: background-color 0.3s ease;
}

.table-container table td, .table-container table th {
    max-width: 150px; /* Adjust the width as needed */
    white-space: normal; /* Allow text to wrap */
    overflow-wrap: break-word; /* Ensure text breaks only at word boundaries */
    word-break: normal; /* Ensure text breaks only at word boundaries */
}
.select-filter-wrapper {
    position: relative;
}

.filter-input {
    display: none;
    position: absolute;
    top: -40px;
    left: 0;
    width: 100%;
    z-index: 1000;
}

/* teamplus styles */

        .calendar-container {
            border-radius: 0.5rem;
            overflow: hidden;
        }
        
        .calendar-header {
            background-color: #2c3e50;
            color: white;
            font-weight: 500;
            padding: 10px 0;
        }
        
        .calendar-header .col {
            border-right: 1px solid rgba(255, 255, 255, 0.2);
        }
        
        .calendar-header .col:last-child {
            border-right: none;
        }

        .week-number {
            background-color: #f2f3f5;
            color: rgb(4, 4, 4);
            width: 60px;
            font-weight: 500;
            font-size: 1.25rem;
            padding: 10px;
            min-width: 60px;
        }
        
        .calendar-day {
            min-height: 120px;
            border-right: 1px solid #dee2e6;
            border-bottom: 1px solid #dee2e6;
            position: relative;
            padding-bottom: 40px;
        }
        
        .calendar-day:last-child {
            border-right: none;
        }
        
        .day-date {
            font-weight: 500;
            margin-bottom: 8px;
        }
        
        .today {
            background-color: rgba(13, 110, 253, 0.05);
        }
        
        .user-entry {
            margin-bottom: 10px;
            border-radius: 0.25rem;
            padding: 8px;
            background-color: #f8f9fa;
            border-left: 3px solid #6c757d;
        }
        
        .user-entry.current-user {
            background-color: rgba(13, 110, 253, 0.1);
            border-left-color: #0d6efd;
        }
        
        .user-name {
            font-weight: 600;
            margin-bottom: 5px;
            font-size: 0.9rem;
        }
        
        .day-actions {
            position: absolute;
            bottom: 10px;
            right: 10px;
        }
        
        .location-badge {
            font-size: 0.75rem;
        }
        
        .location-office {
            background-color: var(--bs-primary);
        }
        
        .location-home {
            background-color: var(--bs-success);
        }
        
        .location-site {
            background-color: var(--bs-warning);
            color: #000;
        }
        
        .location-sick {
            background-color: var(--bs-danger);
        }
        
        .location-vacation {
            background-color: var(--bs-purple);
        }
        
        .activity-text {
            font-size: 0.85rem;
            margin-top: 5px;
        }
        
        .team-member-badge {
            cursor: pointer;
            transition: all 0.2s;
        }
        
        .team-member-badge.active {
            background-color: var(--bs-primary);
            color: white;
        }
        
        .day-menu {
            position: absolute;
            background-color: white;
            box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
            border-radius: 0.25rem;
            padding: 0.5rem 0;
            min-width: 10rem;
            z-index: 1000;
            display: none;
        }
        
        .day-menu-item {
            padding: 0.5rem 1rem;
            cursor: pointer;
        }
        
        .day-menu-item:hover {
            background-color: #f8f9fa;
        }
        
        .notification-toast {
            position: fixed;
            bottom: 20px;
            right: 20px;
            z-index: 1100;
        }
        
        .delete-entry-btn {
            font-size: 1.5rem;
            line-height: 1;
            font-weight: bold;
            opacity: 0.5;
            transition: opacity 0.2s, transform 0.2s;
            padding: 0 4px !important;
        }

        .user-entry:hover .delete-entry-btn {
            opacity: 1;
        }

        .delete-entry-btn:hover {
            transform: scale(1.2);
            opacity: 1;
        }

        .team-member-container {
            display: inline-block;
        }

        .delete-member-btn {
            display: inline-block;
            opacity: 0.5;
            font-weight: bold;
            cursor: pointer;
            transition: opacity 0.2s;
        }

        .team-member-badge:hover .delete-member-btn {
            opacity: 1;
            color: var(--bs-danger);
        }


            .calendar-container {
                font-size: 0.85rem;
            }
            
            .calendar-day {
                min-height: 100px;
                padding: 8px;
                padding-bottom: 40px;
            }
            
            .user-entry {
                padding: 6px;
                margin-bottom: 8px;
            }
            
            .day-date {
                font-size: 0.85rem;
            }

/* Additional styles for div-based calendar layout */
.calendar-header {
    display: flex;
    background-color: #2c3e50;
    color: white;
    font-weight: 500;
}

.calendar-header .col {
    flex: 1;
    text-align: center;
    padding: 10px 0;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
}

.calendar-header .col:last-child {
    border-right: none;
}

.row.g-0 {
    display: flex;
    border-bottom: 1px solid #dee2e6;
}

.row.g-0:last-child {
    border-bottom: none;
}
