.mat-basics {
    min-height: 300px;
}

.vid-set {
    width: 100vw;
    width: 100svw;
    aspect-ratio: 4/3;
}

.vid-card {
    width: 100vw;
    width: 100svw;
}

.angle1 {
    transform: rotate(45deg) !important;
}

.angle2 {
    transform: rotate(135deg);
}

.angle3 {
    transform: rotate(225deg);
}

.angle4 {
    transform: rotate(315deg);
}

.video-container .video-controls {
    position: relative;
    width: calc(100vw - 1em) !important;
    width: calc(100svw - 1em) !important;
    display: flex;
    justify-content: space-around;
}

.video-container .video-controls button {
    background: transparent;
    color: #fff;
    font-weight: bolder;
    text-shadow: 2px 1px 2px #000;
    border: none;
    cursor: pointer;
}

.video-container .video-controls .timeline {
    flex: 1;
    display: flex;
    align-items: center;
    border: none;
    border-right: 3px solid #ccc;
    border-left: 3px solid #ccc;
}

.video-container .video-controls .timeline .bar{
    background: rgb(1, 1, 65);
    height: 4px;
    flex: 1;
    cursor: pointer;
}

.video-container .video-controls .timeline .bar .inner{
    background: #ccc;
    width: 0%;
    height: 100%;
}

.video-container .bi {
    font-size: 20px !important;
}


/* offcanvas customizer */
.offcanvas-size-xl {
    --bs-offcanvas-width: min(95vw, 600px) !important;
}
.offcanvas-size-xxl {
    --bs-offcanvas-width: min(95vw, 90vw) !important;
}
.offcanvas-size-md { /* add Responsivenes to default offcanvas */
    --bs-offcanvas-width: min(95vw, 400px) !important;
}
.offcanvas-size-sm {
    --bs-offcanvas-width: min(95vw, 250px) !important;
}

.waitevt {
    min-height: 100% !important;
    height: 100% !important;
    background-color: rgba(200,200,200,.1) !important;
    left: 0 !important;
    padding: 10px !important;
    margin: 0px !important;
}

.defevt {
    left: 0 !important;
}

.blockedevt {
    width: 100% !important;
    height: 4em !important;
}

.vstretch {
    min-height: 100% !important;
    height: 100% !important;
}

.guibtnmaster {
    opacity: 0.75;
    transition: opacity 0.4s;
}

.guibtnmaster:hover {
    opacity: 1;
    transition: opacity 0.4s;
}

.guibtnprimary {
    opacity: 0.75;
    transition: opacity 0.4s;
}

.guibtnprimary:hover {
    opacity: 1;
    transition: opacity 0.4s;
}

.guibtnsecondary {
    opacity: 0.25;
    transition: opacity 0.4s;
}

.guibtnsecondary:hover {
    opacity: 1;
    transition: opacity 0.4s;
}

.blink {
    -webkit-animation: blink-animation 1s steps(5, start) infinite;
    animation: blink-animation 1s steps(5, start) infinite;
}

@keyframes blink-animation {
    to {
      visibility: hidden;
    }
}

@-webkit-keyframes blink-animation {
    to {
      visibility: hidden;
    }
}

@media screen and (orientation: landscape) {
    #footer {
        display: none;
    }

    .vid-set {
        height: calc(100vh - 1em) !important;
        height: calc(100svh - 1em) !important;
    }
    
    .vid-card {
        height: 100vh !important;
        height: 100svh !important;
    }
    
    .vid-card .card {
        height: 100vh !important;
        height: 100svh !important;        
    }

    .vid-card .card-footer {
        display: none;
    }

    .vid-card .video-controls {
        position: absolute !important;
        top: calc(100vh - 8em) !important;
        width: auto !important;
        display: block;
    }
}

.unselectable {
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn_close_white {
   background-color: white !important;
   opacity: 0.5;
}

