#testButton {
    right: 5px;
    top: 5px;
    width: 50px;
    height: 20px;
    position: absolute;
    z-index: 999;
    display: block;
}

#testInputDiv {
    background-color: #fff;
    overflow:auto; 
    display: none;
    top:5%; 
    right: 10%; 
    position: absolute; 
    width:80%; 
    height: 90%;
    z-index: 100;
}

#recordDiv {
    position: absolute;
    overflow: auto;
}

#menubutton {
    position: absolute;
    display: none;
    z-index: 40;
    cursor: pointer;
}

#statisticsbutton {
    position: absolute;
    display: none;
    z-index: 40;
    cursor: pointer;
}

#deletebutton {
    display: none;
    position: absolute;
    z-index: 40;
    height: 3rem;
    left: 5px;
    bottom: 5px;
    cursor: pointer;
}

#settingsbutton {
    position: absolute;
    z-index: 40;
    height: 3rem;
    cursor: pointer;
}

* {
    font-family: Calibri, Arial, sans-serif;
    /*touch-action: none;  /*No double tap zoom */
  }

li {
    /*list-style-type: none; */
}

ul {
    padding: 0.2rem;
    padding-left: 1rem !important;
    list-style: disc !important;
}

body{
min-height: 100vh;
}

#header {
    width: 100%;
    height: 3.5rem;
    text-align: center;
    font-size: 3rem;
    position: absolute;
    z-index: 35;
}

.debugBorder {
    border: 1px solid purple;  /* also in media */
}
  
.box-background-fill {
    background-color: rgb(255,255,255,1);
}

.black-text-color {
    color: #000000;
}

#whiteboard {
    position: absolute;
    top: 3.5rem;
    height: 80%;
    overflow: hidden;
    z-index: 30;
    transform: translateX(calc(50vw - 50%));
    background-color: rgba(255,255,255,1);
    border: 1px solid black;
}

#canvas {
    margin-top: 0rem;
    width: 100%;
    max-height: 100%;
    background-color: rgba(0,0,0,0);
    /*touch-action: manipulation; /* No double tap zoom */
}

.grey-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%; 
    height: 100%; 
    background-color: rgba(0, 0, 0, 0.6); 
    z-index: 95; 
}

.input_number {
    resize: none; /* Prevent resizing */
    height: 1.2em;
    width: 2rem;
}

.input_text {
    resize: none; /* Prevent resizing */
    height: 1.2em;
    width: 5rem;
}

.no-select {
    user-select: none; /* Standard syntax */
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
}

.recordTitle {
    text-decoration: underline;
}

.recordText {
    margin-bottom: 0px;
}

.recordGesamt {
    text-decoration: underline;
    margin-bottom: 0px;
}

.recordListcontainer {

}

.svgInputButton {
  cursor: pointer;
  transition: fill 0.1s ease;
}

.svgInputButton:active {
  fill: grey;
}

#modesDiv,#recordDiv {
    border-radius: 7px;
}

#modeButtonDiv {
    border-radius: 0.375rem;
}

@font-face {
    font-family: 'MyCustomFont';
    src: url('./files/font.ttf') format('truetype'); /* Adjust file type as needed */
  }

  .svg-text {
    font-family: 'MyCustomFont';
  }

@media(min-width: 841px){
    #settingsbutton {
        bottom: 3%;
        right: 2%;
    }

    #modesDiv {
        left: 2%;
        top: 3.5rem;
        position: absolute;
        width: 25%;
        display: flex !important;
        flex-direction: column; /* Stacks buttons vertically */
        align-items: center; /* Aligns buttons to the left (optional) */
        gap: 5px;
        z-index: 40;
    }

    #recordDiv {
        top: 3.5rem;
        height: 80%;
        left: 70%;
        width: 25%;
        display: block !important;
    }
}

@media(max-width: 840px){
    .debugBorder {
        border: 1px solid red; /**/
    }

    #tasklist {
        width: 25%;
    }

    #whiteboard {
        left: 10%;
        width: 80%;
        transform: translateX(0);
    }

    #menubutton {
        display: block;
        top: calc(4rem);
        left: 5%;
        transform: translateX(-50%);
        height: 3rem;
    }
    #statisticsbutton {
        display: block;
        top: calc(8rem);
        left: 5%;
        transform: translateX(-50%);
        height: 3rem;
    }

    #settingsbutton {
        display: block;
        top: calc(12rem);
        left: 5%;
        transform: translateX(-50%);
        height: 3rem;
    }

    #modesDiv, #recordDiv {
        display: none;
        position: absolute;
        background-color: #fff;
        padding: 4%;
        top:5%; 
        left:50%;
        transform: translateX(-50%);
        width:fit-content;
        height: fit-content;
        z-index: 100 !important; /* also gets set with js because this doesn't work */
        max-height: 85%;
        overflow: auto;
    }

    .modesTitle {
        text-align: center;
    }

    #modesDiv {
        flex-direction: column; /* Stacks buttons vertically */
        /*align-items: flex-start;  Aligns buttons to the left (optional) */
        gap: 5px;
    }
}


@media(max-width: 520px){
    .debugBorder {
        border: 1px solid blue;
    }

    #menubutton {
        display: block;
        height: calc(17vh - 3.5rem);
        top: 90%;
        bottom: 1rem;
        left: 25%
    }

    #statisticsbutton {
        display: block;
        height: calc(17vh - 3.5rem);
        top: 90%;
        bottom: 1rem;
        left: 75%
    }

    #settingsbutton {
        display: block;
        height: calc(17vh - 3.5rem);
        top: 90%;
        bottom: 1rem;
        left: 50%
    }

    #tasklist {
        top: 1rem;
        height: calc(100% - 2rem);
        width: 60%;
        display: none;
    }

    #whiteboard {
        left: 5%;
        width: 90%;
    }

    #modesDiv, #recordDiv {
        display: none;
        position: absolute;
        background-color: #fff;
        padding: 4%;
        top:5%; 
        left:50%;
        transform: translateX(-50%);
        width:fit-content;
        height: fit-content;
        z-index: 100 !important; /* also gets set with js because this doesn't work */
        max-height: 85%;
        overflow: auto;
    }

    .modesTitle {
        text-align: center;
    }

    #modesDiv {
        flex-direction: column; /* Stacks buttons vertically */
        /*align-items: flex-start;  Aligns buttons to the left (optional) */
        gap: 5px;
    }
}



.numberButtons {
    stroke-width: 2;
    stroke: black;
    fill: lightgrey;
}

#timerRectBorder {
    stroke-width: 2;
    stroke: black;   
}

[class^="metal-"] {
  --shine-deg: 45deg;
  position: relative;
  overflow: hidden;
  border-radius: 0.875rem; /* slightly rounded */
  padding: 4rem 2rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
  width: 200px;
  height: 180px;
  background-size: cover;
  background-blend-mode: overlay;
  transition: transform 0.3s ease;
}

[class^="metal-"]:hover {
  transform: translateY(-2px);
}

/* Shared shine layer */
[class^="metal-"]::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(100%) rotate(var(--shine-deg));
  width: 300%;
  height: 300%;
  z-index: 1;
  background: linear-gradient(
    30deg,
    transparent 20%,
    transparent 40%,
    rgba(255, 255, 255, 0.4) 50%,
    rgba(255, 255, 255, 0.4) 55%,
    transparent 70%,
    transparent 100%
  );
  transition: transform 2s ease-in;
}

[class^="metal-"]:hover::after {
  animation: shine 1s ease-in;
}

/* Metallic color variants */
.metal-red {
  background:
    linear-gradient(to bottom, #8b1e1e, #c43b3b, #8b1e1e),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.15) 0px,
      rgba(255,255,255,0.15) 2px,
      rgba(0,0,0,0.1) 4px,
      rgba(0,0,0,0.1) 6px
    );
}

.metal-green {
  background:
    linear-gradient(to bottom, #0d6d50, #19b87e, #0d6d50),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.15) 0px,
      rgba(255,255,255,0.15) 2px,
      rgba(0,0,0,0.1) 4px,
      rgba(0,0,0,0.1) 6px
    );
}

.metal-blue {
  background:
    linear-gradient(to bottom, #0b3f73, #2980b9, #0b3f73),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.15) 0px,
      rgba(255,255,255,0.15) 2px,
      rgba(0,0,0,0.1) 4px,
      rgba(0,0,0,0.1) 6px
    );
}

.metal-yellow {
  background:
    linear-gradient(to bottom, #b58e00, #f1c40f, #b58e00),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.15) 0px,
      rgba(255,255,255,0.15) 2px,
      rgba(0,0,0,0.1) 4px,
      rgba(0,0,0,0.1) 6px
    );
}

/* Shine animation */
@keyframes shine {
  0% {
    transform: translateX(100%) rotate(var(--shine-deg));
  }
  100% {
    transform: translateX(-100%) rotate(var(--shine-deg));
  }
}