/* Basic Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background: linear-gradient(to bottom, #4ecdc4, #ffe66d);
    color: #fff;
    min-height: 100vh;
    padding: 0;
    margin: 0;
    text-align: center;
    overflow: hidden;
    position: relative;
}

h2 {
    padding: 20px;
    font-size: 1.5rem;
}

.container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    height: 100vh;
    padding: 20px;
}

/* Control button styling */
.control-button {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.2);
    border: 4px solid white;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    cursor: pointer;
}

.control-button::before {
    content: "";
    position: absolute;
    width: 100px;
    height: 100px;
    background-color: rgba(120, 215, 120, 0.9);
    border-radius: 50%;
}

/* Play/Pause icons */
.play-pause-icon {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Pause icon (two vertical bars) */
.pause-icon {
    display: none; /* Hidden by default */
}

.pause-icon span {
    display: inline-block;
    width: 16px;
    height: 40px;
    background-color: white;
    margin: 0 5px;
}

/* Play icon (triangle) */
.play-icon {
    display: block; /* Shown by default */
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 35px solid white;
    margin-left: 10px; /* Offset slightly to center visually */
}

/* Classes to toggle visibility */
.playing .play-icon {
    display: none;
}

.playing .pause-icon {
    display: flex;
}

/* Dots around the circle */
.dot {
    position: absolute;
    width: 10px;
    height: 10px;
    background-color: white;
    border-radius: 50%;
}

.dot-top-left {
    top: 10px;
    left: 10px;
}

.dot-top-right {
    top: 10px;
    right: 10px;
}

.dot-bottom-left {
    bottom: 10px;
    left: 10px;
}

.dot-bottom-right {
    bottom: 10px;
    right: 10px;
}

/* Swipe instruction */
.swipe-instruction {
    font-size: 1.2rem;
    margin-bottom: 40px;
    color: white;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.chevron {
    font-size: 1.5rem;
    margin: 0 10px;
}

/* Navigation bar at bottom */
.nav-bar {
    width: 30%;
    height: 5px;
    background-color: #333;
    border-radius: 3px;
    margin: 10px auto;
    position: absolute;
    bottom: 20px;
    left: 35%;
}

/* QR scanning area */
#qr-reader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.9);
    display: none;
}

#qr-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#cancelScanButton {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 11;
    background-color: #e95d5d;
    color: white;
    padding: 10px 15px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    display: none;
}

/* Control buttons */
.button_startscan {
    position: absolute;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(255, 255, 255, 0.2);
    color: white;
    border: 2px solid white;
    padding: 15px 30px;
    border-radius: 30px;
    font-size: 1.2rem;
    cursor: pointer;
    z-index: 5;
    display: none;
}

.button_startstop {
    display: none;
}

/* Hide elements that shouldn't be visible in the new design */
#videoid, #videotitle, #videoduration, #videostart, .settings_div, hr {
    display: none;
}

/* Close button removed */

/* Status bar removed */
