@import url('https://fonts.googleapis.com/css?family=Khand:200,300,400,500,600,700,800');


body {
    display: flex;
    flex-direction: row;
    font-family: 'Khand';
    display: flex;
    align-items: center;
    background-image: linear-gradient(#000, #000, #393000, #5d4f00);
    height: 100vh;
    margin: 0;
}

body.light-mode {
	background-image: linear-gradient(#ebe9e1, #dac98e, #d1ba46, #c8b12f );
	color: black;
}


.left-bar.light-mode h1,
.header.light-mode i{
    
    color: black;
    
}

.broadcasts-section.light-mode .line{
    background-color: white;
}

.left-bar.light-mode {
	background-color: #bca91c;
}

.left-bar.light-mode h2,
.header.light-mode h1,
.broadcasts-section.light-mode h1 {
	color: black;
}

.header.light-mode i {
	color: black;
}

.broadcast.light-mode,
.station.light-mode {
	border: 1px solid white;
	background-blend-mode: multiply;
}

.brand.light-mode h1 {
    color: black;
}

.search-wrapper {
	position: relative;
	width: 100%;
	max-width: 400px;
    margin-right: 2%;
}

.search-bar {
	width: 100%;
	padding: 10px 40px 10px 12px; /* Right padding for the icon */
	border-radius: 8px;
	border: 1px solid #ccc;
	font-size: 1rem;
	background-color: white;
	color: black;
	transition: all 0.3s ease;
	box-sizing: border-box;
}

.search-bar:focus {
	outline: 2px solid #999; /* or any color you want on focus */
}

.search-wrapper .fa-magnifying-glass {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	color: #999;
	pointer-events: none; /* lets users click through to the input */
	font-size: 1rem;
}

.suggestions-list {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: white;
	color: black;
	list-style: none;
	padding: 0;
	margin: 0;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	max-height: 200px;
	overflow-y: auto;
	font-family: 'Khand';
}

.suggestions-list li {
	padding: 10px;
	cursor: pointer;
	border-bottom: 1px solid #ddd;
}

.suggestions-list li:hover {
	background-color: #f0f0f0;
}


.search-bar::placeholder {
    color: #888;
}



.line.light-mode {
	background-color: black;
}

.view-box.light-mode {
	background-color: #eeeeee;
	color: #000;
}


.left-bar {
    display: flex;
    flex-direction: column;
    background-color: #000;
    width: 17%;
    height: 91.5vh;
    align-items: center;
    text-align: center;
    padding-top: 5%;
    font-family: 'Khand';
}

.left-bar a {
    margin-top: -5%;
    margin-bottom: 7%;
    text-decoration: none;
}

.left-bar h2 {
    color:white;
    font-size: 1.1rem;
    font-weight: 500;
}


.left-bar a:hover {
    opacity: 60%;
    cursor:pointer;
}

.brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 5%;
}

.brand a {
    margin-bottom: 0%;
}

.brand img {
    width: 50%
}

.brand h1 {
    color:white;
    font-size: 1.5rem;
    margin-top: -5%;
    margin-bottom: 40%;
    font-weight: 800;
}

.brand h1:hover {
    cursor: pointer;
}

.main {
    display: flex;
    flex-direction: column;
    padding: 2%;
    width: 78%;
    height: 89vh;
}

.main h1 {
    color:white;
    font-size: 1.1rem;
    font-weight: 300;
}

.header {
    display: flex;
    align-items: center;
    flex-direction: row;
    max-height: 13%;

}

.header h1 {
    color: white;
    font-size: 2rem;
    font-weight: 500;
    min-width: 65%;
}

.header a:hover {
    opacity: 80%;
    cursor: pointer;
}

.header img {
    height: 6vh;
    border-radius: 50%;
    margin-left: 2vh;
}

/* IMPORTANT: display:flex always, but opacity and pointer-events control visibility! */
.settings-dropdown-wrapper {
    position: relative;
    display: inline-block;
}

.settings-dropdown-wrapper i {
    color:white;
}

.settings-dropdown {
    position: absolute;
    top: 120%; /* Push it slightly below the bars */
    left: 50%;
    transform: translateX(-50%) translateY(-10px); /* Center it under bars */
    background-color: black;
    min-width: 150px;
    box-shadow: 0px 8px 16px rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    flex-direction: column;
    opacity: 0;
    transition: all 0.3s ease;
    pointer-events: none;
    display: flex;
    z-index: 10;
    padding: 10px 0; /* Padding top/bottom */
}

/* Chatbox pointer (little triangle) */
.settings-dropdown::before {
    content: "";
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 0 8px 8px 8px;
    border-style: solid;
    border-color: transparent transparent black transparent;
}

.settings-dropdown a {
    color: white;
    padding: 10px 16px;
    text-decoration: none;
    display: block;
    font-family: 'Khand';
    font-size: 1rem;
    text-align: center;
}
  
/* default hover for all normal links */
.settings-dropdown a:hover {
    background-color: #333;
    border-radius: 5px;
}
  
/* SPECIAL logout color */
.settings-dropdown a.logout-link {
    color: #ff4d4d; /* red text */
}
  
/* SPECIAL logout hover */
.settings-dropdown a.logout-link:hover {
    background-color: #330000; /* dark red background */
    color: #ff8080; /* lighter red text */
}
  

/* Hover open if not locked */
.settings-dropdown-wrapper:hover .settings-dropdown:not(.locked) {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

/* Locked open */
.settings-dropdown.locked {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}
  

  

.broadcasts-section {
    min-height: 20%;
    max-height: 30%;
    width: 100%;
}

.broadcasts-section h1 {
    color: white;
    font-size: 1.75rem;
    font-weight: 600;
}

.broadcasts-list {
    color:white;
    display: flex;
    flex-direction: column;
    height: 80%;
    width:60%;
    scroll-behavior: smooth;
    margin-bottom: 0%;
}

.broadcast {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 96%;
    margin-bottom: 1%;
    border-radius: 10px;
    background-image: url('../image/banner.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border: 1px solid white;
    min-height: 25%;
    max-height: 25%;
    padding-left: 1%;
    text-decoration: none;
}

.broadcast:hover {
    opacity: 80%;
    cursor: pointer;
}

.broadcast .broadcast-text {
    display: flex;
    flex-direction: row;
    align-items: center;
    min-width: 85%;
    max-width: 85%;
    height: 100%;
}

.broadcast .broadcast-view {
    display: flex;
    flex-direction: row;
    width: 15%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.broadcast-view .view-box {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 70%;
    height: 60%;
    border-radius: 10px;
    background-color: rgb(0, 0, 0);
}

.view-box h2 {
    font-size: 1.4vh;
}

.broadcast img {
    height: 60%;
    border-radius: 50%;
    margin-right: 1%;
    outline: 1px solid white;
}

.line {
    width:58.5%;
    height: 1px;
    background-color: rgb(128, 128, 128);
}

.stations-list {
    color:white;
    display: flex;
    flex-direction: column;
    height: 140%;
    width: 60%;
    scroll-behavior: smooth;
    margin-bottom: 0%;
}

.station {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 96%;
    margin-bottom: 1%;
    border-radius: 10px;
    background-image: url('../image/banner.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border: 1px solid white;
    min-height: 18%;
    max-height: 20%;
    padding-left: 1%;
}

.station:hover {
    opacity: 80%;
    cursor: pointer;
}

.station img {
    height: 65%;
    border-radius: 50%;
    margin-right: 1%;
    outline: 1px solid white;

}

/* Phones (width <= 767px) */
@media (max-width: 767px) {
    body {
        flex-direction: column;
        align-items: stretch;
        height: auto;
        overflow: hidden;
    }

    .left-bar {
        flex-direction: row;
        width: 95%;
        height: 60px;
        justify-content: center;
        align-items: center;
        padding: 0 10px;
        position: sticky;
        top: 0;
        z-index: 999;
        background-color: #000;
    }

    .left-bar .brand {
        display: none; /* Hide big logo on mobile */
    }

    .left-bar a {
        margin: 0 5px;
        font-size: 0.7rem;
        color: white;
    }


    .main {
        width: 95%;
        padding: 10px;
        margin-top: 10px;
    }

    .header {
        flex-direction: row;
        align-items: flex-start;
        width: 100%;
    }

    .header h1 {
        font-size: 1.2rem;

    }

    .header img {
        height: 40px;
        margin-left: 0;
    }

    .settings-dropdown-wrapper {
        margin-left: 5%; /* Align to the right */
    }

    .settings-dropdown-wrapper i {
        margin-bottom: 0;
    }

    .settings-menu {
        margin-top: 0;
    }

    .broadcasts-section {

        height: 80%;
    }

    .broadcasts-list,
    .stations-list{

        width: 100%;
        height: 100%; /* Allow for dynamic height */
    }

    .station {
        min-height: 20%;
        max-height: 20%;
    }


    .search-wrapper {
        width: 30%;
        margin-right: 0;
        margin-bottom: 10px;
    }

    .header img {
        display: none;
    }
}