main {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 84vh;
    height: 84dvh;
    justify-content: center;
    overflow-y: hidden;
    align-items: center;
}

body {
    touch-action: manipulation;
    overflow: hidden;
    overscroll-behavior-y: contain;
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.main-icon {
    position: absolute;
    top: 46%;
    right: 1%;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    font-size: clamp(13px, 1vw, 18px);
    transition: transform 0.2s ease;
    z-index: 1001;
}

#emergency-btn {
    top: 38%;
}

.main-icon-text {
    opacity: 0;
    max-width: 0;
    overflow: hidden;
    white-space: nowrap;
    transition: opacity 0.3s ease, max-width 0.3s ease;
    font-size: clamp(13px, 1vw, 16px);
}

.main-icon:hover .main-icon-text {
  opacity: 1;
  max-width: 200px;
}

.btn-recalculate {
    padding: 7px 15px;
}

.btn-delete {
    background-color: red;
    padding: 7px;
    border: none;
    border-radius: 5px;
}

.coord-side {
  color: transparent;
  user-select: none;
}

.calibration-details {
    flex-direction: row;
    gap: 20px;
}

pre {
    font-family: Arial, sans-serif;
}


ul li {
    list-style: none;
}

html {
    height: 100%;
    overflow-x: hidden;
}

body {
  color: aliceblue;
  user-select: none;
}

.alert {
    position: fixed;
    z-index: 1003;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
    height: auto !important;
    text-align: center;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    border: none;
    color: white;
    min-width: 80vw;
}

.alert.alert-success {
    box-shadow: 10px 10px 40px rgba(3, 255, 5, 0.2);
    background: rgba(124, 255, 4, 0.49) !important;
}

.alert.alert-warning {
    box-shadow: 10px 10px 40px rgba(243, 177, 17, 0.22);
    background: rgb(199, 158, 28) !important;
}

.alert.alert-danger {
    box-shadow: 10px 10px 40px rgba(255, 9, 9, 0.22);
    background: rgba(246, 14, 14, 0.85) !important;
}

.smaller-img-machine {
    padding: 30px 0;
}

form {
    display: flex;
    flex-direction: column;
    padding: 0 clamp(20px, 4vw, 50px);
    align-items: center;
    justify-content: center;
}

.form-input {
    width: 300px;
}

button[type=submit], button[type=button] {
    color: white;
    border-radius: 5px;
    font-size: clamp(12px, 0.7vw, 16px);
    font-weight: bold;
    cursor: pointer;
    height: clamp(30px, 0.7vw, 40px);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    background-image: linear-gradient(135deg, rgb(169 169 169 / 81%), rgba(94, 90, 90, 0.7)) !important;
    transition: all 0.3s ease;
    border: none !important;
}

button[type=submit]:hover, button[type=button]:hover {
    background-image: linear-gradient(135deg, rgba(154, 131, 131, 0.6), rgb(176 83 83 / 17%)) !important;
}

button[type=submit] {
  background: none;
  border: #d3d2d2 1px solid;
}

button[type=submit]:hover {
  background: linear-gradient(to bottom, #656565, #3a3a3a);
  box-shadow: 0 6px 10px rgba(0,0,0,0.3);
}

.button-return-back,
.edit-company-button,
.company-employee-details,
.edit-user-button,
.passing-records-btn
{
  color: white;
  border-radius: 5px;
  padding: 6px 35px;
  font-weight: bold;
  cursor: pointer;
  height: clamp(30px, 0.7vw, 40px);
  font-size: clamp(12px, 0.7vw, 16px);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  border: none;
}

.button-return-back {
  background: #ff15154f !important;
}

a.badge, button.badge {
   color: white;
   border-radius: 20px;
   font-size: clamp(10px, 0.6vw, 16px);;
   font-weight: bold;
   cursor: pointer;
   transition: 0.3s ease;
   box-shadow: 0 4px 6px rgba(0,0,0,0.2);
}

a.badge.text-bg-info {
    background: linear-gradient(to bottom, #cce8ff, #00889c);
}
a.badge.text-bg-info:hover {
  background: linear-gradient(to bottom, #00889c, #104049);
  box-shadow: 0 6px 10px rgba(0,0,0,0.3);
}

button.badge.text-bg-danger {
    background: linear-gradient(to bottom, #f5b1b1, #c00);
    padding: 6px;
}
button.badge.text-bg-danger:hover {
  background-image: linear-gradient(135deg, #c00, #861b1b);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.button-return-back:hover, .edit-company-button:hover, .company-employee-details:hover, .edit-user-button:hover {
  background-image: linear-gradient(135deg, #891b1b, #861b1b) !important;
  color: white !important;
}

.link {
    color: white;
}

input {
  outline: none;
  border: none;
  height: 30px;
}

select:focus-visible {
  outline: none;
}

a {
   color: #ffffff;
   text-decoration: none;
   font-size: 15px;
}

p, a, .navbar-text, div {
    font-family: "Ubuntu";
}

nav {
    font-size: 14px !important;
}

.nav-item {
   font-size: clamp(13px, 1.5vh, 20px);
}

.page-container {
    background-image: url("/static/images/background-image.ed27d5f2a761.png");
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: local;
    background-size: cover;
    flex: 1;
    top: 97px;
    display: flex;
    justify-content: center;
    height: 100vh;
    height: 100dvh;
    align-items: center;
    overflow-x: hidden;
    overflow-y: hidden;
    scrollbar-color: #bba9a9 #444444;
    scrollbar-width: thin;
}

a:hover {
    color: rgb(157, 154, 154);
    text-decoration: none;
}

.employees-list, .logs-list {
    max-height: 550px;
    overflow-y: auto;
}

.employees-list {
    width: 900px;
}

.company-employees-list {
    max-height: 800px;
    overflow-y: auto;
    width: 725px;
}

.machines-types-list {
    overflow-y: auto;
    max-height: 416px;
}

.machine-type {
    max-width: 416px;
    margin: 0 auto;
}

.filters-panel {
    background-color: black;
    border: solid 2px #e5e4e4;
    padding: 0 1pc 0px;
}

h3 {
    text-transform: uppercase;
    padding: clamp(16px, 1.5vw, 45px) 0 clamp(16px, 1.5vw, 45px) 0;
    display: block;
    font-size: clamp(18px, 1.5vw, 28px);
    text-align: center;
}

button.badge {
    border: none;
}

select {
    max-height: 106px;
    height: 32px;

    appearance: none !important;        /* remove default arrow */
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("/static/images/calendar-logs-icons/arrow-dropdown.06abb8e3532d.png") !important; /* custom icon */
    background-repeat: no-repeat !important;
    background-position: right 0px center !important;
    background-size: clamp(22px, 4.5vh, 44px);

    padding-left: 5px;
    padding-right: 29px;

    color: white !important;
}

select option {
    background: black !important;
}

.coordinates {
    font-family: 'EB Garamond', serif !important;
    font-feature-settings: "onum" 1 !important;
    font-size: 16px;
}

.custom-tooltip .tooltip-inner {
    font-size: 0.8rem;
    padding: 0.6rem 1rem;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

img {
   text-align: center;
}

input[type=text], input[type=password], input[type=email], input[type=search], select, input[type=number] {
    display: inline-block;
    border-radius: 4px;
    box-sizing: border-box;
}

input[type=datetime-local] {
    border-radius: 5px;
}

h2 {
    font-size: 2rem;
}

.btns-position {
    position: fixed;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
}

.icon-size {
    height: clamp(53px, 9vh, 80px);
    object-fit: contain;
}

.custom-tooltip .tooltip-inner {
    font-size: 0.8rem;
    padding: 0.6rem 1rem;
}

.ui-autocomplete {
    background: black;
    color: white;
    scrollbar-color: #bba9a9 #444444;
    scrollbar-width: thin;
}

.section-button {
    background: none;
    border: 1px solid white;
    border-radius: 15px;
    padding: 10px;
    font-size: clamp(13px, 1vw, 18px);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.section-button:hover {
   background: white !important;
   color: black !important;
   transition: 0.3s;
}

.transparent-card, .transparent-item, .transparent-container {
    border-radius: 8px !important;
    backdrop-filter: blur(10px);
    box-shadow: 10px 10px 40px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
    border: transparent !important;
    background: #ffffff1c !important;
}

.transparent-container {
    padding: 15px 40px;
    overflow: auto;
}

.transparent-card:hover, .transparent-item:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 15px 15px 50px rgba(0,0,0,0.3);
}

input[type=date] {
    backdrop-filter: blur(10px);
    box-shadow: 10px 10px 40px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
    background-color: transparent !important;
    border: none;
    max-width: 213px;
}

.icon-wrapper img {
    visibility: hidden;
}

#change-section-btn {
    background: #ffffff69 !important;
    border-radius: 10px !important;
}

#change-section-btn:hover {
    color: white !important;
}

.ui-autocomplete {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 30px;
    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0.05));
}

.ui-widget.ui-widget-content {
    border: none;
    width: auto !important;
    max-height: 200px;
    overflow-y: auto;
    overflow-x: hidden;
}

.ui-menu .ui-menu-item:hover {
    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0.05));
}

.ui-state-active {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.05)) !important;
    background-color: transparent !important; /* 👈 usuwa niebieski */
    border: none !important; /* 👈 często też daje niebieski */
    box-shadow: none !important; /* 👈 opcjonalnie */
    color: white !important;
}

.form-control {
    width: clamp(180px, 49vw, 240px);
}

.bi.bi-chevron-right, .bi.bi-chevron-left {
    background: none !important;
}

.bi.bi-chevron-right:hover, .bi.bi-chevron-left:hover {
    background: none !important;
}

#notifications-btn {
    color: white;
    background: #758bff47 !important;
}

#emergency-btn {
    color: white;
    background: #ff1c1c47 !important;
}

.passing-records-btn {
    background: #d4d4d46b;
}

textarea {
    outline: none;
    height: 200px;
    backdrop-filter: blur(10px);
    box-shadow: rgba(0, 0, 0, 0.2) 10px 10px 40px;
    transition: 0.3s;
    background: rgba(255, 255, 255, 0.11);
    padding-left: 13px;
    border: transparent !important;
    color: white !important;
}


@media (max-width: 1292px) {
  .page-container {
    background-attachment: unset;
    background-position: unset;
  }
  main {
      justify-content: flex-start !important;
      overflow-x: hidden;
  }
}

@media (max-width: 1000px) {
    .passing-records-btn
    {
        width: 80px;
        text-align: center;
        padding: 0;
    }
}

@media (max-width: 800px) {
    .col-sm-12 {
        width: 100% !important;
    }

    input,
    .field-content,
    select,
    .ui-autocomplete,
    option,
    input[type=time],
    input[type=date] {
        font-size: 10px;
    }

    .transparent-container {
        padding: 0;
        backdrop-filter: none;
    }
}

@media (max-width: 688px) {
  .page-container {
    overflow-y: hidden;
  }
}
