/* Main Styles for Safahat Lokantasi */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root {
    --primary-orange: #ff6600;
    --dark-gray: #333;
    --light-gray: #f8f9fa;
    --border-color: #dee2e6;
}

/*font-family: "Playfair Display", serif;*/
body {
	font-family: "Poppins", sans-serif;
    background-color: #fff;
}

/* Text Color Classes */
.text-orange {
    color: var(--primary-orange);
}

/* Button Styles */
.btn-orange {
    background-color: var(--primary-orange);
    border-color: var(--primary-orange);
    color: white;
}

.btn-orange:hover {
    background-color: #e05a00;
    border-color: #e05a00;
    color: white;
}

/* Header Styles */
.navbar {
    padding: 0.5rem 1rem;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.navbar-brand {
    font-size: 1.2rem;
}

/* Delivery Hours Banner */
.delivery-hours {
    padding: 8px 15px;
    border-radius: 5px;
    display: inline-flex;
    align-items: center;
}
.delivery-hours figure{
	margin: 0 0 0 15px;
}
.delivery-hours span{
	font-weight: 600;
}
#searchInput{
	background: #f0f0f0;
	border: none;
    padding-right: 70px;
	border-radius: 10px;
}
#searchInput::placeholder{
	font-size: 18px;
	line-height: 300;
	letter-spacing: 0.6px;
}
#productOptionsContainer input:checked{
	background-color: #55BE6D;
	border-color: #55BE6D;
}
#productOptionsContainer input:checked[type="checkbox"]{
	background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='%2355BE6D' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/></svg>");
	background-color: #fff;
	border-color: #ebebeb;
}
#searchButton{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    font-size: 12px;
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
	border: none;
}
.view-toggle button{
	border: none;
}
.modal-body .btn-dark{
	background-color: #000;
	border-color: #000;
}
.navbar-light .navbar-nav .nav-link{
	color: #000;
}
.navbar-light .navbar-nav .nav-link.active{
	color: #ff6600;
	font-weight: 600;
}
.navbar-light .navbar-nav .nav-link:hover{
	color: #ff6600;
}
.product-image-container .product-image{
	height: 30vh;
	border-radius: 10px;
}
.modal-content{
	border-radius: 10px;
	border: none;
}
.modal{
	background: rgba(0,0,0,0.8);
}
textarea.form-control{
	resize: none;
}
#searchButton:hover{
	background: #ff6600;
}
/* Category Sidebar */
.categories-sidebar {
    background-color: #FCFCFC;
    border-radius: 10px;
    padding: 15px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.btn-outline-orange{
	color: #000;
	background: transparent;
	transition: all 0.4s;
}
.btn-outline-orange:hover{
	color: #fff;
	background: #ff6600;
}
.product-list-details-description{
	max-width: 70%;
}

.category-header {
    font-size: 1.1rem;
    padding-bottom: 5px;
}
#addToCartBtn{
	display: flex;
	align-items: center;
}
.modal-header .btn-close{
	color: #000;
	border: 2px solid #000;
	opacity: 1;
    padding: 5px;
    border-radius: 7px;
	font-size: 13px;
}
.giris-form label{
	font-size: 13px;
	margin-bottom: 5px;
}
.category-list li {
    padding: 5px 0;
}

.category-list li:last-child {
    border-bottom: none;
}

.category-list li a {
    color: var(--dark-gray);
    text-decoration: none;
    display: block;
    transition: all 0.2s;
	font-weight: 600;
}

.category-list li a:hover {
    color: var(--primary-orange);
}

.category-list li.active a {
    color: var(--primary-orange);
    font-weight: bold;
}

.categories-down-img{
	width: 100%;
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}
.categories-down-img figure{
	width: 100%;
	border-radius: 10px;
	margin: 0;
}
.categories-down-img figure img{
	border-radius: 10px;
	width: 100%
}
.categories-down-text{
	padding: 25px 20px;
	background: rgba(0,0,0,0.8);
    backdrop-filter: blur(1px);
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
}
.categories-down-text b{
	font-size: 18px;
}
.categories-down-text span{
	font-size: 32px;
	color: #fff;
}

/* Product Card Styles */
.product-card {
    background-color: white;
    border-radius: 5px;
    overflow: hidden;
    transition: all 0.3s;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    position: relative;
	border-radius: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.product-card:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}

.product-image {
    width: 100%;
    height: 120px;
    object-fit: cover;
	border-radius: 20px;
}

.product-details {
    padding: 15px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.product-title {
    font-weight: bold;
    font-size: 1.1rem;
    margin-bottom: 5px;
    max-height: 2.6rem;
    margin-bottom: 5px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
#restaurantSelector{
	width: auto;
    padding: 0.75rem 2rem 0.75rem 1rem;
	font-weight: 600;
}
.product-description {
    color: #666;
    font-size: 0.85rem;
    margin-bottom: 10px;
}

.product-price {
    color: var(--primary-orange);
    font-weight: bold;
    font-size: 1.2rem;
}
#userDropdown{
	display: flex;
	align-items: center;
	padding: 5px 10px 5px 25px;
	margin-left: 20px;
    border-color: #d9d9d9;
}
.urun-radio{
	display: flex;
	flex-wrap: wrap;
}
#userDropdown:after{
	display: none;
}
#userDropdown figure{
	margin: 0;
}
#userDropdown figure img{
	transition: all 0.4s;
}
#userDropdown:hover figure img{
	filter: brightness(0) invert(1);
}
#userDropdown:hover span{
	color: #fff;
}
#userDropdown:hover span.text-orange{
	color: #ff6600;
}
.btn-outline-secondary.dropdown-toggle.show figure img{
	filter: brightness(0) invert(1);
}
.btn-outline-secondary.dropdown-toggle.show span{
	color: #fff;
}
.btn-outline-secondary.dropdown-toggle.show span.text-orange{
	color: #ff6600;
}
.userPartialClass{
	display: flex;
	flex-direction: column;
	margin-right: 20px;
	align-items: end;
}
.userPartialClass span{
	font-size: 15px;
	line-height: 21px;
	font-weight: 600;
	color: #000;
	transition: all 0.4s;
}
.userPartialClass span.text-orange{
	color: #ff6600;
}
.modal-footer .quantity-control button{
	color: #fff;
	background: #000;
	border: 1px solid #000;
	border-radius: 5px;	
	width: 30px;
	height: 30px;
	transition: all 0.4s;
}
.modal-footer .quantity-control button:hover{
	background: transparent;
	color: #ff6600;
	border: 1px solid #ff6600;
}
.address-selection-container .card:has(.form-check-input:disabled) {
    pointer-events: none;
    filter: none;
    opacity: .5;
}

.quantity-control button{
	color: #CBCBCB;
	border: 1px solid #CBCBCB;
	background: transparent;
	border-radius: 5px;	
	width: 30px;
	height: 30px;
	transition: all 0.4s;
}
.quantity-control button:hover{
	background: #CBCBCB;
	color: #000;
}
.urun-iptal .remove-item{
	color: #707070;
	border: 1px solid #707070;
	background: transparent;
	border-radius: 5px;	
	width: 30px;
	height: 30px;
}
.urun-iptal .remove-item:hover{
	background: #707070;
	color: #000;
}
#cartItemsContainer > div{
	border-bottom: 1px solid #dee2e6;
}
#cartItemsContainer > div:last-child{
	border: none;
}
.alt-btn{
	color: #707070;
	border: 1px solid #ddd;
	border-radius: 10px;
	font-weight: 600;
	padding: 7px 30px;
	font-size: 14px;
}
.alt-btn:hover{
	background: #ddd;
}
.sepet-detay{
	background: #FCFCFC;
	border-radius: 20px;
}
.siparis-ozeti{
	border-radius: 20px;
}
.siparis-ust-banner{
	background: #F0F0F0;
	border-radius: 20px;
}
.order-options-container ul{
	list-style: none;
	padding: 0;
}
.width-100{
	width: 100%;
}
.list-group-hesap{
	flex-direction: row;
	align-items: center;
	justify-content: end;
}
.list-group-hesap > a{
	margin-right: 60px;
	font-weight: 600;
	color: #000;
	text-decoration: none;
	transition: all 0.4s;
}
.list-group-hesap > a:hover{
	color: #ff6600;
}
.list-group-hesap > a.active{
	color: #ff6600;
}
.cursor-pointer{
	cursor: pointer;
}
.add-to-cart-btn {
    background-color: white;
    border-radius: 50%;
    border: none;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
}
.tum-siparisler > div{
	background: transparent;
	transition: all 0.4s;
}
.tum-siparisler > div:nth-child(2n + 3){
	background: #f8f8f8;
}
.tum-siparisler > div:hover{
	background: #ebebeb;
	transform: scale(1.01);
}
.tum-siparisler > div:first-child:hover{
	background: transparent!important;
	transform: scale(1)!important;
}
.add-to-cart-btn:hover {
    color: var(--primary-orange);
}

/* List View Styles */
.product-list-item {
    display: flex;
    background-color: white;
    border-radius: 5px;
    margin-bottom: 15px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.product-list-image {
    width: 120px;
    height: 120px;
    object-fit: cover;
}

.product-list-details {
    padding: 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

/* View Toggle */
.view-toggle .btn.active {
    background-color: var(--dark-gray);
    color: white;
    border-color: var(--dark-gray);
}

/* Search Bar */
.search-container .form-control {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.search-container .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* Form Elements */
.form-control:focus, 
.form-select:focus {
    border-color: var(--primary-orange);
    box-shadow: 0 0 0 0.25rem rgba(255, 102, 0, 0.25);
}

/* Cart Badge */
.badge.bg-danger {
    background-color: var(--primary-orange) !important;
}

/* Breadcrumbs */
.breadcrumb-item a {
    color: var(--primary-orange);
    text-decoration: none;
}

.breadcrumb-item.active {
    color: var(--dark-gray);
}

/* Footer Styles */
footer a:hover {
    color: var(--primary-orange) !important;
}

/* Error Messages */
.error-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

/* Success Messages */
.success-message {
    color: #28a745;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

.text-muted a{
	color: #6c757d!important;
}

.mobil-goster{
	display: none;
}
.mobil-gizle{
	display: flex;
}
.form-select{
	background-position: right 0.5rem center;
}
.modal-header h2{
	font-family: "Playfair Display", serif;
}

@media screen and (max-width: 1199px){
	.row>*{
		width: 100%;
	}
	.restaurant-select{
		padding: 0;
		margin-top: 0!important;
	}
	#productList .row > .col-6{
		width: 50%;
	}
	.navbar{
		padding: 0;
		height: 70px; 
	}
	.navbar-brand img{
		width: 180px;
	}
	.mobil-goster{
		display: flex;
	}
	.mobil-gizle{
		display: none;
	}
	#miniCartContainer.dropdown-menu{
		right: -70px;
	}
	.modal-mobil-btn{
        position: fixed;
        right: 20px;
        top: 20px;
        z-index: 999;
        background-color: #fff;
	}
	.navbar-collapse{
		position: absolute;
		left: 0;
		top: 100%;
		background: #fff;
		width: 100%;
		padding: 0px 15px 15px;
		box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075);
	}
	.header-giris-sepet > div{
		width: 100%;
	}
	.header-giris-sepet > div a.btn{
		width: 100%;
		margin-top: 10px;
	}
	.header-ust-sepet{
		display: flex;
		align-items: center;
	}
	.mobile-column{
		flex-direction: column;
	}
	.restaurant-select-main{
		display: flex;
		flex-direction: column-reverse;
	}
	#navbarNav-header .cartDropdown-basket{
		display: none;
	}
	#userDropdown{
		padding: 10px;
		justify-content: center;
		margin: 0;
		background: #f1f1f1;
	}
	#userDropdown:hover{
		background: #6c757d;
	}
	.product-modal-footer > div{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.product-modal-footer > div > div{
		width: 50%;
	}
	.product-modal-footer #addToCartBtn{
		width: 100%;
		margin-top: 15px;
	}
	.product-list-details{
		flex-wrap: wrap;
	}
	.product-list-details-description{
		width: 100%;
		max-width: 100%;
	}
	.product-list-details > div{
		width: 100%;
	}
	.siparis-ust-banner{
		flex-direction: column;
	}
	.list-group-hesap{
		flex-direction: column;
		align-items: center;
	}
	.list-group-hesap > a{
		margin-right: 0;
		margin-bottom: 10px;
	}
	.siparis-ust-banner > h1{
		margin-right: 0!important;
		margin-bottom: 15px!important;
		text-align: center;
		width: 100%;
		padding-bottom: 10px;
		border-bottom: 1px solid #bcbcbc;
	}
	.list-group-hesap > form{
		margin: 0!important;
		width: 100%;
		text-align: center;
	}
	.list-group-hesap > form button{
		text-align: center!important;
	}
	.tum-siparisler > div:first-child{
		display: none;
	}
	.tum-siparisler div p{
		display: flex;
		text-align: left;
		padding: 3px 0;
	}
	.tum-siparisler div p strong.mobil-goster{
		width: 42%;
		margin-right: 2%;
		color: #000;
		font-size: 1rem;
        font-weight: 600;
		text-align: left;
	}
	.tum-siparisler div p strong{
		width: 56%;
		font-size: 1rem;
		text-align: left;
	}
	.tum-siparisler div p span{
		width: 56%;
		font-size: 1rem;
		text-align: left;
	}
	#orderDetailsModal .modal-footer{
		display: none;
	}
	.sepet-detay > div > div.p-4{
		padding: 0!important;
	}
	.mobil-user-login div{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.mobil-user-login div a{
		margin-right: 0!important;
		margin-bottom: 10px;
	}
	.mobil-user-login div a:last-child{
		margin-right: 0!important;
		margin-bottom: 0;
	}
	.mobile-user-main > div{
		width: 50%;
		padding: 0;
	}
	.mobile-user-main .delivery-hours figure{
		display: none;
	}
	.mobile-user-main .delivery-hours > div{
		align-items: start!important;
	}
	.mobile-user-main .mobil-goster{
		justify-content: end;
	}
	.mobile-user-main .mobil-user-login a{
		min-width: 120px;
	}
	.mobil-user-login .userPartialClass{
		margin-right: 0;
	}
	.mobil-user-login .dropdown figure{
		display: none;
	}
	.siparis-son-kontrol{
		padding: 0!important;
		border: none!important;
		box-shadow: none!important;
	}
	.siparis-son-kontrol > .card-body{
		padding: 0!important;
	}
}
@media screen and (min-width: 199px) and (max-width: 599px){
	
}
@media screen and (min-width: 600px) and (max-width: 1199px){
	
}