html {
    height: 100%;
    width: 100%;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
}

header {
    background-color: #fff;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-bottom: 2px solid black;
    height: 40px;
    position: sticky;
    top: 0;
}

header input[type="radio"] {
    display: none;
}

body:has(#video-mode:checked) .audio,
body:has(#video-mode:checked) .info {
    display: none;
}

body:has(#audio-mode:checked) .video,
body:has(#audio-mode:checked) .info {
    display: none;
}

body:has(#info-mode:checked) .video,
body:has(#info-mode:checked) .audio {
    display: none;
}

label {
    cursor: pointer;
    text-align: center;
    font-weight: bold;
    width: 100%;
    padding-block: 10px;
}

label ~ label {
    border-left: 2px solid black;
}

input:checked + label {
    background-color: indigo;
    color: white;
}

.indicator {
    margin-block: 0.5rem;
    padding-inline: 0.5rem;
}

.counts {
    background-color: #eee;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    padding: 0.5rem;
}

#viewer-count,
#like-count {
    font-weight: bold;
}

.pause {
    margin: 1rem auto;
    background-color: #eee;
    width: 100px;
    height: 100px;
    border-radius: 100px;
    display: grid;
    place-items: center;
    font-size: 4rem;
}

.audio,
.info {
    padding-inline: 1rem;
}

details {
    margin-block: 1rem;
    padding: 1rem;
    border: 1px solid black;
}

summary {
    cursor: pointer;
    font-weight: bold;
}

#morse-code {
    padding-bottom: 5rem;
}

#morse-code > li:last-child {
    font-weight: bold;
}

