/* CSS Document */
@font-face {
	font-family: bebas_neue;
	src: url(Bebas_Neue/BebasNeue-Regular.woff);
}

*{
	font-family: Segoe UI, sans-serif;
	margin: 0px;
	padding: 0px;
}
html, body{
	margin: 0px;
	padding: 0;
	overflow-x: hidden;
	max-width: 100%;
	color: black;
	text-decoration: none;

}
.container{
	max-width: 1024px;
}
.page-top{
	width: 100%;
	padding: 0 1rem;
	box-sizing: border-box;
	overflow: hidden;
}
/* Style the navbar */
#navbar {
	overflow: hidden;
	background-color: hsla(0,0%,100%,1.00);
	z-index: 1;
	position: fixed;
	width: 100%;
	top: 0;
	margin-top: 0px;
}
header{
	margin: 0px;
	padding: 0px;
}
h2{
	font-size: 1.5rem;
	margin: 1rem 0;
}

.flex-wrap{
	display: flex;
	flex-wrap: wrap;
	align-items: center;

}
.tablinks{
	display: flexbox;
	flex-grow: 1;
	background-color: transparent;
	border-radius: 0;
	border-width: 0px;
	border-bottom-width: 1px;
	border-top-width: 1px;
	box-shadow: none;
	border-color: transparent;
	border-bottom-color: black;
	border-style: solid;
	font-weight: 1000;
	font-size: large;

}
.tabspacer{
	width: 1px;
	height: 100%;
	background-color: black;
}
.tablinks-active{
border-bottom-color: transparent;
border-top-color: black;

}
.tab{
	display: flex;
	width: 100%;
	align-items: stretch;
	height: 3rem;
}
.tabcontent{
	display: none;

}


/* Navbar links */
#navbar a {
  float: left;
  display: block;
  color: #000;
  text-align: center;
  padding: 14px;

  text-decoration: none;
	font-size: 24px;
}
.navbar-header{
	display: block;
	width: 100%;
}
.navbar-header-desktop{
	margin-left: 2rem;
	display: none;
}
.navbar-content{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.navbar-item{
	width: 100%;
	display: block;
}
img {
	max-width: 100%;
	height: auto;
}

.vert-img{
	max-height: 80%;
	width: auto;
}
.userlist-img{
	height: 6em;
	scale: 80%;
	border: black;
	border-style: solid;
	border-radius: 1em;
	border-width: 1px;

}
.userprofile-img{
	height: 12em;
	scale: 80%;
	border: black;
	border-style: solid;
	border-radius: 1em;
	border-width: 1px;
	margin: -1rem;
	padding: 0px;
	z-index: 1;

}
.vert-img-fill{
	height: 32px;
	width: auto;
}

.navbar-button {
	width: 100%;
	height: 5rem;

	background-color: inherit;
	border: none;
	border-bottom: 2px;
	border-bottom-style: solid;
	border-bottom-color: white;

	font-size: 1.5rem;
	color: white;
	display: block;

}

.navbar-body{
	display: none;
	background-color:hsla(0,0%,75%,1.00);
	width: 100%;
}


/* Page content */
.content {
  padding: 0px;
}

.login-box{
	background-color: white;
	box-shadow: 5px 5px 20px #999, -1px -1px 20px #DDD;
	border-radius: 20px;
	padding: 2rem;
	margin: 2rem 1rem;
	flex-grow: 1;

}

h1{
	font-family: bebas_neue, Segoe UI, sans-serif;
	font-size: 3rem;
	margin: 0px;
}
input{
	margin-bottom: 1rem;
	font-size: 1rem;
	border-color: black;
	border-width: thin;
	padding: 4px;
	padding-left: 8px;
	display: inline-block;
}
label{
	display: inline-block;
	
}
.modal-label{
	font-weight: bold;
	font-size: x-large;
	
}
.size-table{
	font-size: large;
}
.size-table-left-column{
	text-align: right;
}
.login-button{
	color: #2006f4;
	outline: none;
	border: 0;
	background-color: #FFCC00;

	border-radius: 10rem;
	height: 3rem;
	margin: 1rem 0;
	width: auto;
	padding-left: 6rem;
	padding-right: 6rem;
	font-size: 1.5rem;
	font-weight: 600;
}

.row{
	clear: both;
	display: flex;
	max-width: 100%;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: row;
	height: auto;
}
.login{
    display: flex;
    flex-direction: column;
    width: 100%;

}
.col-img{
	float: center;
	display:block;
	margin:auto;
}
.col-2{

	min-width: none;
	margin: 2rem 2rem;
}

p{
	font-size: 1.2rem;
	width: auto;
	margin-bottom: 1rem;
}
form{
	padding: none;
}

ul{
	  margin-top: 14px;
	list-style-type: none;
}

.flexbox-table{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	font-size: 0.9rem;
	font-weight: 600;

}
.flexbox-row{
	display: inline-flex;
	border-bottom: 0.5px;
	border-bottom-style: solid;
	border-bottom-color: black;
	height: 6rem;
	align-items: center;
}
.flexbox-row-friendslist{

	border-bottom-style: none;

}
.flexbox-row-header{
	display: inline-flex;
	border-bottom: 0.5px;
	border-bottom-style: solid;
	border-bottom-color: black;
	height: 2rem;
	align-items: center;
}
.flexbox-item{
	background-color: white;
	margin: 1rem;
}

.flexbox-item-square-img{

	padding: 0px;
	margin-right: 0px;
	
}
.page-row{
	display: inline-flex;
	justify-content: flex-start;
	width: 100%;
	height: 5rem;
}
.flexbox-item-1{
	flex-grow: 8;
	flex-basis: 0;
}
.flexbox-item-search{
	flex-grow: 1;
	flex-basis: 1;
	align-self: stretch;
}
.flexbox-item-2{
	min-width: 2em;
	flex-basis: 0;
}
.flexbox-item-3{
	min-width: 4.4em;
	flex-basis: 0;
}
.flexbox-item-last{
	min-width: 4.4em;
	flex-basis: 0;
	text-align: right;
}

.flexbox-userlist-profile{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: auto;
	justify-content: flex-start;
}
.flexbox-userlist{
	margin: 0.5rem;
	margin-right: 0rem;
	margin-left: 1rem;
}
.flexbox-userlist-changeprofile{
	margin-top: 0;
	z-index: 20;
}
.flexbox-userlist-cake{
	min-width: 2rem;
	flex-basis: 0;

}
.flexbox-userlist-DOB{
	min-width: 5em;
	flex-grow: 1;
	flex-basis: 0;
	font-size: 1rem;
	font-weight: 800;

}
.flexbox-userlist-add{
	min-width: 2rem;
	flex-basis: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.wu-button{
	border: none;
	background-color: #38b6ff;
	color: white;
	font-size: 1rem;
	padding: 1rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	border-radius: 0.5rem;
}

.wu-button-userlist{
	border: black;
	border-style: solid;
	border-radius: 0.3em;
	border-width: 1px;
	text-align: right;
	padding: 0.5em;
	padding-top: 0.3em;
	padding-bottom: 0.3em;

	background-color: transparent;
	color: black;
	z-index: 5;
}
.wu-button-userlist-img{
	border-style: none;
	width: 3rem;
	
}
.red-bg{
	background-color: hsla(359,100%,36%,1.00);
}

.green-bg{
	background-color: hsla(112,100%,35%,1.00);
}
a{
	color: inherit;
	text-decoration: inherit;

}



.wu-modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  
}

/* Modal Content */
.modal-content {
	background-color: #fefefe;
	margin: auto;
	padding: 20px;
	border: none;
	width: 80%;
	display: flex;
	flex-direction: column;
	border-radius: 1rem;
}
.modal-button {
	border: none;
	background-color: #38b6ff;
	color: white;
	font-size: 1.5rem;
	float: right;
	width: auto;
	height: auto;
	padding: 0.5rem 1rem;
	border-radius: 1rem;
}

.modal-button-secondary {

	border: none;
	background-color: transparent;
	color: black;
	font-size: 1.5rem;
	float: right;
	width: auto;
	padding: 0.5rem 1rem;
}

.navbar-content{
	display: flex;
	justify-content: flex-start;
}
.modal-body {
	display: inline-flex;

	flex-direction: column;
	align-items: baseline;
	width: 100%;
}

.modal-footer {
	display: inline-flex;
	justify-content:flex-end;
	align-items: baseline;
	width: 100%;
	margin-top: 1rem;
}

/* The Close Button */
.close {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}


.form-group{
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-bottom: 0.5rem;

}

.modal-input{
	flex-grow: 1;
	min-width: 0px;
	font-size: 1.5rem;
	margin: 0.2rem 0;

}
.page-button {
	border: none;
	background-color: black;
	color: white;
	min-width: 15rem;
	font-size: 1.5rem;
	height: 3rem;
	padding-right: 1rem;
	padding-left: 1rem;
	border-radius: 2rem;
	margin: 1rem 0.5rem;
}
.page-button-holder {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	align-items: center;

}
.page-input{
	display: block;
	font-size: 1.5rem;
	min-width: 10rem;
	margin: 0;
	margin: 1rem;
}

.index-footer{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.share-button{
	height: 4rem;
	margin: 0.3rem;
}

.set-date-holder{
	display: flex;
	justify-content: center;
}
.set-date{
	border: none;
	background-color: transparent;
	font-size: 2rem;
}

footer{
	background-color: black;
	width: 100%;
	margin-top: 3rem;
	display: flex;
	align-items: center;
	flex-direction: column;

}
.page-footer{
}
.footer-content{
	color: white;
	margin: 1rem;
	text-align: center;

}
.footer-link{
	color: white;
	text-decoration: none;
	margin-bottom: 0.2rem;
}

.flexbox-button{
	min-width: 4em;
	margin: 1rem;

}
.center-flex{
	display: flex;
	width:100%;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
}

.share-list-button{
	background-color:#FFCC00;
}

@media
/*	((min-width: 500px) and
	(-webkit-min-device-pixel-ratio: 1)),
	((min-width: 768px) and
	(-webkit-min-device-pixel-ratio: 2)),
	((min-width: 1200px) and
	(-webkit-min-device-pixel-ratio: 3)),
	((min-width: 1600px) and
	(-webkit-min-device-pixel-ratio: 4))
*/
	(min-width: 800px)
{

	html, body {
		display: flex;
		flex-direction: column;
		align-items: center;
		flex-wrap: nowrap;
		width: 100%;
	}
/*
	p{
		font-size: 2rem;
		margin-bottom: 1rem;
	}

	input{
		font-size: 4rem;
		margin-bottom: 3rem;

	}
	.flexbox-table{
		font-size: 2rem;
	}
	.page-top{
		padding-left: 1rem;
		padding-right: 1rem;

	}
	.flexbox-row{
		height: 15rem;

	}
	.flexbox-item{
		margin: 2rem;
		margin-right: 3rem;
	}
	.flexbox-item-2{
		width: 8em;
		flex-basis: 0;
	}
	.flexbox-item-3{
		width: 8em;
		flex-basis: 0;
	}

	.flexbox-item-button{
	}

	.wu-button{
		font-size: 2rem;
		padding: 2rem;
		padding-top: 1rem;
		padding-bottom: 1rem;
		border-radius: 1rem;
	}

	h1{
		font-size: 6rem;
	}
	h2{
		font-size: 3rem;
		margin: 1rem 0;
	}

	.modal-content{
		padding: 4rem;
	}

	.login-box{
		width: 80%;

	}
	.col-1{
		flex-basis: 40%;
		display: flex;
		flex: 1;

		align-items: center;
	}
	.col-2{
		flex-basis: 60%;
		flex: 1;
		min-width: 20rem;
		justify-content: center;
		align-items: center;
		padding-left: 60px;
		padding-right: 60px;
	}

	.page-button-holder {
		text-align: center;
	}

	.share-button {
		margin: 1rem;
		height: 8rem;

	}
*/
	.navbar-header-desktop{
		display: block;
		margin-left: 1rem;
	}
	.navbar-header{
		display: none;
		width: auto;
	}
	.modal-content {
		width: 40rem;
		
	}
	.navbar-content{
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		flex-wrap: nowrap;
		width: 100%;
		max-width: 900px;
	}
	.navbar-item{
		background: none;
		margin-left: 2rem;
		width: auto;
		display: block;
	}
	.navbar-body{
		display: flex;
		background: none;
		width: 100%;
	}
	.navbar-button {

		background: none;
		font-size: 1.5rem;
		font-family: Segoe UI, sans-serif;
		color: black;
		display: block;
	}
	.container{
		width: 100%;
		max-width: 900px;
	}
	.login-box{
	  flex-grow: 1;
		max-width: 40%;

	}
	.col-2{
		flex-grow: 1;
		max-width: 40%;
	}
	header{
		width: 100%;
	}
	#navbar{
		display: flex;
		align-items: center;
		flex-direction: column;
	}
	.page-footer{
		width: 100%;
		max-width: 900px;
		text-align: right;

	}
	.footer-content{
		text-align: right;

	}
	/*
	.login-button{
		border-radius: 40px;
		height: 60px;
		width: 180px;
		font-size: 18px;
		font-weight: 600;
		FLOAT: right;
	}

*/
}

/* Ensure modals are not displayed by default */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Center the modal content */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

/* Make the terms and conditions and privacy policy links stand out */
#agreeTerms label a {
  text-decoration: underline; /* Underline the link */
  font-weight: bold; /* Make the link text bold */
}
.bold{
	font-weight: bold; /* Make the link text bold */

}
/* Added styles for the footer */
html, body {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.container {
    flex: 1; /* Ensures the container takes up the available space */
}

.page-footer p:first-child {
    font-size: 1rem; /* Adjust size as needed */
    font-weight: lighter; /* Make font lighter */
    color: #b4b4b4; /* Lighter font color, adjust as needed */
    margin-bottom: 0.5rem; /* Add some space below the header */
}

.page-footer {
    position: relative;
    margin-top: auto; /* Pushes the footer to the bottom */
}



/* Refined Banner Styling */

/* Updated Banner Styling */
.banner {
    background-color: #f2f2f2; /* Light grey background */
    color: black;
    padding: 10px 20px; /* Horizontal padding */
    border-bottom: 1px solid #ddd;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); /* Subtle shadow */
    position:relative; /* Fixed position */
    left: 50%; /* Center align */
    transform: translateX(-50%); /* Center the banner */
    max-width: 800px; /* Max width matching site's fixed width */
	display: flex;
	width:100%;
	justify-content: center;
	height:fit-content;
	margin: 3px 0;


}

.banner-content {
	display: flex;
	justify-content: center;
	width: fit-content;
	padding: 0 10px;


}

.banner-close {
    float: right;
    padding: 0 10px;
    font-size: 18px;
    cursor: pointer;
    line-height: 20px; /* Align with banner text */
}

.banner-close:hover {
    background-color: #ddd; /* Hover effect within banner */
}



#croppingModal {
    position: fixed; /* Stay in place */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1000; /* Sit on top */
    background-color: white; /* Assuming a white background for the modal */
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Black with opacity */
    z-index: 999; /* Behind the modal */
    display: none; /* Hidden by default */
}


/* Styling the buttons in the cropping modal */
#confirmCrop, #cancelCrop {
    padding: 10px 15px;
    margin: 10px 5px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    background-color: #007bff; /* Example color */
    color: white;
}

#cancelCrop {
    background-color:transparent; /* Example color for cancel button */
	color: #000;
}

/* Adjusting modal title style */
.modal-title {
    font-size: 1.5em;
    margin-bottom: 15px;
}

/* Adjusting the size of the cropping modal */
#croppingModal {
    width: fit-content; /* Smaller max width */
	height: fit-content;
}

#imageToCrop {
	width: 50%;
	max-width: 300px;
	max-height: 50%;
}

/* Ensuring buttons are visible and properly positioned */
#confirmCrop, #cancelCrop {
    display: inline-block; /* Making sure buttons are not hidden */
    margin-top: 10px; /* Spacing above the buttons */
}

.modal-close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 25px;
    cursor: pointer;
}

