
@font-face{
	src: url('assets/fonts/Lato-Regular.ttf');
	font-family: lato;
}

*{
	box-sizing: border-box;
}

body img{
	width: 100%;
}

body{
	min-width: 350px;
	font-family: lato, sans-serif, tahoma;
	margin:0px;
	padding: 0px;

}

body a{
	text-decoration: none;

}

header{
	display: flex;
}

.alert{
	background-color: #ffb193;
	color: #730000;
	padding: 10px 20px;
}
.error{
	color: red;
}
.logo-holder{
	width: 100px;
}

.header-div{
	flex: auto;
}

.float-end{
	float:right;
}
.main-nav{
	display: flex;
	flex-wrap: wrap;
}

.nav-item{
	padding: 10px;
	text-align: center;
	min-width: 80px;
}

.nav-item2{
	padding: 10px;
	text-align: center;
	min-width: 80px;
}

.main-title{
	padding: 10px;
	display: flex;
}

header .active{
	border-bottom: solid 4px red;
}

.dropdown{
	position: relative;
}

.dropdown-list{
	position: absolute;
	border: solid thin #ccc;
	background-color: white;
	margin-top:10px;
}

.hero{
	height: 500px;
	object-fit: cover;
}

.content{
	padding: 4px 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.music-card img:hover{
	transform: scale(1.3);
}

.music-card img{
	height: 200px;
	object-fit: cover;
	transition: all .5s cubic-bezier(.68,-0.55,.27,1.55);
}

.music-card{
	width: 200px;
	margin:20px;
	background-color: #eee;
}

.card-content{
	padding: 4px;
}
.card-title{
	font-size: 18px;
}

.card-subtitle{
	opacity: 0.7;
}

.bi{
	margin: 5px;
	max-width: 25px;
}

footer a{
	color: white;
}

footer{
	padding: 20px;
	background-color: #444;
	display: flex;
	color: white;
}

.footer-div{
	flex:1;
	padding: 10px;
}

.form-control{
	width: 100%;
	padding: 10px;
	border: solid thin #ccc;
}

.btn{
	border:none;
	padding: 10px 20px;
	cursor: pointer;
}

.bg-blue{
	background-color: blue;
	color: white;
}

.bg-red{
	background-color: red;
	color: white;
}

.bg-purple{
	background-color: purple;
	color: white;
}

.bg-orange{
	background-color: orange;
	color: white;
}

.m-1{
	margin: 10px;
}

.m-2{
	margin: 20px;
}

.mx-1{
	margin-left: 10px;
	margin-right: 10px;
}

.mx-2{
	margin-left: 20px;
	margin-right: 20px;
}

.my-1{
	margin-top: 10px;
	margin-bottom: 10px;
}

.my-2{
	margin-top: 20px;
	margin-bottom: 20px;
}

.admin-content{
	padding: 20px;
	background-color: #fefbed;
}

.form-group{
	display: flex;
}

.section-title{
	margin-left: 20px;
	font-size: 20px;
	font-weight: bold;
}

header .socials{
	flex:auto;
	text-align: right;
}

.hide{
	display: none;
}

.table{
	width: 100%;
	border-collapse: collapse;
	background-color: #eee;

}

.table th, .table td{
	border: solid thin #ccc;
	padding: 5px 10px;
}

.table th{
	background-color: #444;
	color: white;
}

@media (max-width: 768px){

	header{
		flex-direction: column;
	}

	footer{
		flex-direction: column;
	}
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin-bottom: 1em;
}

.video-container iframe {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
}

.lyrics-box {
  background-color: #f9f9f9;
  padding: 1em;
  border-radius: 8px;
  margin-top: 2em;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.lyrics-box h4 {
  margin-bottom: 0.5em;
  font-size: 1.2em;
}

#lyrics-preview,
#lyrics-full {
  font-family: lato, sans-serif, tahoma;
  font-size: 0.95em;
  color: #333;
  white-space: pre-wrap;
  line-height: 1.6;
}

#lyrics-preview {
  max-height: 6em;
  overflow: hidden;
}

.btn.mt-2 {
  margin-top: 1em;
}

/* --- Playlist Styles --- */
.playlist-card {
	background-color: #f7f7f7;
	border: 1px solid #ddd;
	border-radius: 6px;
	padding: 10px 15px;
	margin: 10px;
	display: inline-block;
	width: 200px;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.05);
	position: relative;
	transition: box-shadow 0.3s;
}
.playlist-card:hover {
	box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.playlist-card a {
	font-weight: bold;
	color: #333;
	text-decoration: none;
	display: inline-block;
}

.playlist-delete {
	position: absolute;
	top: 5px;
	right: 5px;
}

.playlist-form {
	border: 1px solid #ddd;
	background-color: #fdfdfd;
	padding: 15px;
	margin-bottom: 20px;
	max-width: 400px;
}

.playlist-grid {
	display: flex;
	flex-wrap: wrap;
}

.user-content {
	padding: 20px;
	background-color: #fefbed; /* sama seperti .admin-content */
}
