:root {
	--bg-color: #fff;
	--bg-card: #fff;
	--text-color-1: #000;
}

[data-theme="dark"] {
	--bg-color: #000;
	--bg-card: #171717;
	--text-color-1: #fff;
}

/* NORMALIZE css starts here */
*,
::before,
::after {
	box-sizing: border-box;
	border-width: 0;
	border-style: solid;
	border-color: #e5e7eb;
}

html,
:host {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-moz-tab-size: 4;
	tab-size: 4;
	font-family:
		ui-sans-serif,
		system-ui,
		sans-serif,
		"Apple Color Emoji",
		"Segoe UI Emoji",
		"Segoe UI Symbol",
		"Noto Color Emoji";
	font-feature-settings: normal;
	font-variation-settings: normal;
	-webkit-tap-highlight-color: transparent;
}

body {
	margin: 0;
	line-height: inherit;
}

hr {
	height: 0;
	color: inherit;
	border-top-width: 1px;
}

abbr:where([title]) {
	text-decoration: underline dotted;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
}

a {
	color: inherit;
	text-decoration: inherit;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp,
pre {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Menlo,
		Monaco,
		Consolas,
		"Liberation Mono",
		"Courier New",
		monospace;
	font-feature-settings: normal;
	font-variation-settings: normal;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

table {
	text-indent: 0;
	border-color: inherit;
	border-collapse: collapse;
}

button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-feature-settings: inherit;
	font-variation-settings: inherit;
	font-size: 100%;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	color: inherit;
	margin: 0;
	padding: 0;
}

button,
select {
	text-transform: none;
}

button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
	-webkit-appearance: button;
	background-color: transparent;
	background-image: none;
}

:-moz-focusring {
	outline: auto;
}

:-moz-ui-invalid {
	box-shadow: none;
}

progress {
	vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

[type=search] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

summary {
	display: list-item;
}

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
	margin: 0;
}

fieldset {
	margin: 0;
	padding: 0;
}

legend {
	padding: 0;
}

ol,
ul,
menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

dialog {
	padding: 0;
}

textarea {
	resize: vertical;
}

input::placeholder,
textarea::placeholder {
	opacity: 1;
	color: #9ca3af;
}

button,
[role=button] {
	cursor: pointer;
}

:disabled {
	cursor: default;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
	display: block;
	vertical-align: middle;
}

img,
video {
	max-width: 100%;
	height: auto;
}

html {
	background-color: #fff;
	font-family: "Cairo",
		ui-sans-serif,
		system-ui,
		sans-serif,
		"Apple Color Emoji",
		"Segoe UI Emoji",
		"Segoe UI Symbol",
		"Noto Color Emoji";
}

/* "Alexandria" */

body {
	background-color: var(--bg-color);
}

body>div {
	height: 100dvh;
	display: flex;
}

.relative {
	position: relative;
}

.hidden {
	display: none !important;
}

.line-clamp-1 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
}

.line-clamp-2 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

.line-clamp-3 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
}

/* header css starts here */
.fatwa-header {
	position: sticky;
	top: 0;
	z-index: 99;
	background-color: var(--bg-color);
	border-bottom: 1px solid #E5E5E5;

	[data-theme=dark] & {
		border-color: #262626;
	}
}

.search-bar {
	padding: 12px 20px;
	position: fixed;
	inset: 0;
	background-color: #fff;

	[data-theme=dark] & {
		background-color: #171717;
	}

	.search-bar_close-btn {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-bottom: 12px;
		color: #1F2937;
		font-weight: 700;

		[data-theme=dark] & {
			color: #fff;
		}
	}

	.search-form {
		display: flex;
		align-items: center;
		gap: 8px;

		.search-form_label {
			position: relative;
			display: block;
			width: 100%;

			.search-form_icon {
				position: absolute;
				right: 12px;
				top: 13px;
				width: 20px;
				height: 20px;
			}
		}

		.search-form_input {
			width: 100%;
			padding: 11px 40px 11px 12px;
			border-radius: 8px;
			border: 1px solid #E5E5E5;

			&:focus {
				outline-color: #8A1739;
			}

			[data-theme=dark] & {
				background-color: #171717;
				border-color: #262626;
				color: #fff;
			}
		}

		.search-bar_btn {
			padding: 10px 16px;
			border-radius: 8px;
			background-color: #8A1739;
			color: #fff;
		}

		.search-form_btn {
			padding: 13px;
			border-radius: 8px;
			background: #8A1739;
		}
	}
}

.fatwa-nav {
	padding: 12px 0;
	max-width: 1096px;
	margin: 0 auto;

	@media (width < 1500px) {
		max-width: 872px;
	}

	@media (width < 768px) {
		padding: 8px 20px;
	}

	.fatwa-nav_list {
		display: flex;
		align-items: center;
		justify-content: space-between;

		.list-item_link {
			display: flex;
			align-items: center;
			gap: 4px;
			color: #1F2937;
			font-weight: 700;
			font-size: 18px;

			[data-theme=dark] & {
				color: #E5E7EB;
			}

			span {
				display: none;
			}
		}

		.list-item_btn {
			padding: 8px;
			border-radius: 8px;
			background-color: #F5F5F5;

			[data-theme=dark] & {
				background-color: #171717;

				svg path {
					fill: #A3A3A3;
				}
			}
		}

		.fatwa-nav_list-item.with-menu-btn {
			display: none;

			@media (width < 768px) {
				display: flex;
				align-items: center;
				gap: 16px;
			}

			&>.list-item_menu-btn {
				display: none;
				padding: 8px;
				border: 1px solid #E5E7EB;
				border-radius: 8px;
				background-color: #F9FAFB;

				[data-theme=dark] & {
					background-color: #171717;
					border-color: #404040;

					svg path {
						stroke: #fff;
					}
				}

				@media (width < 768px) {
					display: block;
				}
			}
		}

		.fatwa-nav_list-item.mobile-btn {
			display: none;

			@media (width < 768px) {
				display: flex;
				align-items: center;
				gap: 6px;
			}
		}

		.fatwa-nav_list-item.desk-search {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 24px;
			width: 100%;

			@media (width < 768px) {
				display: none;
			}
		}

		.list-item_theme-and-user {
			display: flex;
			align-items: center;
			gap: 20px;
		}

		.theme-toggle {
			padding: 13.5px;
			background-color: #F5F5F5;
			border-radius: 8px;

			@media (width < 768px) {
				padding: 8px;

				>svg {
					width: 20px;
					height: 20px;
				}
			}

			svg.theme-toggle_dark {
				display: none;
			}

			[data-theme=dark] & {
				background-color: #171717;

				svg.theme-toggle_dark {
					display: block;
				}

				svg.theme-toggle_light {
					display: none;
				}
			}
		}

		.relative:has(> .user-action_dropdown:not(.hidden)) {
			@media (width < 768px) {
				&::before {
					content: '';
					position: fixed;
					inset: 0;
					z-index: 4;
					background-color: rgba(0, 0, 0, 0.4);
					backdrop-filter: blur(1px);
				}
			}
		}

		.user-action {
			padding: 10px;
			background-color: #F5F5F5;
			border-radius: 8px;

			@media (width < 768px) {
				padding: 8px;

				>svg {
					width: 20px;
					height: 20px;

					[data-theme=dark] & {
						path {
							stroke: #A3A3A3;
						}
					}
				}
			}

			[data-theme=dark] & {
				background-color: #171717;
			}
		}

		.user-action_dropdown {
			padding: 16px;
			border: 1px solid #E5E7EB;
			border-radius: 12px;
			background-color: #fff;
			box-shadow: 0 24px 48px -12px rgba(3, 7, 18, 0.10);
			position: absolute;
			left: 0;
			top: 100%;
			z-index: 5;
			margin-top: 16px;
			width: max-content;
			min-width: 280px;

			@media (width < 768px) {
				position: fixed;
				bottom: 0;
				top: auto;
				right: 0;
				width: 100%;
				box-shadow: 0 -32px 64px -12px rgba(3, 7, 18, 0.20);
				border-radius: 12px 12px 0 0;

				transform: translateY(0);
				visibility: visible;
				transition: transform 0.3s ease-out, visibility 0s linear 0s;

				&.hidden {
					display: block !important;
					transform: translateY(100%);
					visibility: hidden;
					pointer-events: none;
					transition: transform 0.3s ease-in, visibility 0s linear 0.3s;
				}
			}

			[data-theme=dark] & {
				background-color: #000;
				border-color: #262626;
				box-shadow: 0 24px 48px -12px rgba(139, 139, 139, 0.1);
			}

			.dropdown-close-btn {
				padding: 8px;
				border: 1px solid #E5E7EB;
				border-radius: 8px;
				background-color: #F9FAFB;
				width: fit-content;
				display: none;

				@media (width < 768px) {
					display: block;
					margin-right: auto;
				}
			}

			.dropdown-user {
				display: flex;
				align-items: center;
				gap: 12px;
				padding-bottom: 12px;
				border-bottom: 1px solid #F3F4F6;
				margin-bottom: 12px;

				@media (width < 768px) {
					justify-content: center;
					flex-direction: column;
					text-align: center;
					padding-bottom: 0;
					border-bottom: 0;
					margin-bottom: 20px;
				}

				[data-theme=dark] & {
					border-color: #262626;
				}

				.dropdown-user_icon {
					padding: 14px;
					background-color: #F3F4F6;
					border-radius: 50%;

					[data-theme=dark] & {
						background-color: #171717;
					}
				}

				.dropdown-user_info .info-name {
					display: block;
					color: #030712;
					font-size: 14px;
					font-weight: 700;

					[data-theme=dark] & {
						color: #E5E7EB;
					}
				}

				.dropdown-user_info .info-username {
					display: block;
					color: #4B5563;
				}
			}

			.dropdown-links {
				margin-bottom: 12px;

				@media (width < 768px) {
					border-radius: 12px;
					border: 1px solid #F3F4F6;
					padding: 8px 16px;
				}

				.dropdown-links_item {
					padding: 12px;
					border-radius: 8px;
					position: relative;

					@media (width < 768px) {
						padding: 10px 0;

						&:not(:last-child) {
							border-bottom: 1px solid #F3F4F6;
						}

						&::after {
							content: url('../images/chevron-left.svg');
							position: absolute;
							left: 0;
							top: 50%;
							transform: translateY(-50%);
						}
					}

					&:hover {
						background-color: #f9fafb;

						[data-theme=dark] & {
							background-color: #171717;
						}
					}

					.item-link {
						display: flex;
						align-items: center;
						gap: 8px;
						font-size: 14px;
						font-weight: 500;
						color: #111827;

						[data-theme=dark] & {
							color: #E5E7EB;
						}
					}
				}
			}

			.dropdown-logout {
				padding: 10px 16px;
				width: 100%;
				display: flex;
				align-items: center;
				justify-content: center;
				gap: 6px;
				color: #DC3545;
				font-weight: 500;
				border: 1px solid #E5E7EB;
				border-radius: 8px;

				[data-theme=dark] & {
					border-color: #262626;
				}
			}
		}

		.login-btn {
			background-color: #8A1739;
			color: #fff;
			font-weight: 500;
			padding: 10px 16px;
			border-radius: 8px;

			@media (width < 768px) {
				font-size: 14px;
				padding: 7px 16px;
			}
		}

		.user-menu {
			position: relative;
		}

		.user-menu_btn {
			display: flex;
			align-items: center;
			gap: 8px;
			background: none;
			border: none;
			cursor: pointer;
			padding: 4px;
			border-radius: 50px;
			transition: background 0.2s;
		}

		.user-menu_btn:hover {
			background: rgba(138, 23, 57, 0.08);
		}

		.user-avatar {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 36px;
			height: 36px;
			border-radius: 50%;
			background: #8A1739;
			color: #fff;
			font-weight: 600;
			font-size: 15px;

			@media (width < 768px) {
				width: 32px;
				height: 32px;
				font-size: 13px;
			}
		}

		.user-name-text {
			font-size: 14px;
			font-weight: 500;
			color: var(--text-primary, #1a1a1a);

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		.user-menu_dropdown {
			display: none;
			position: absolute;
			top: calc(100% + 8px);
			left: 0;
			min-width: 220px;
			background: var(--card-bg, #fff);
			border: 1px solid var(--border-color, #E5E5E5);
			border-radius: 12px;
			box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
			z-index: 1000;
			overflow: hidden;
		}

		[data-theme="dark"] .user-menu_dropdown {
			background: #1a1a1a;
			border-color: #333;
			box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
		}

		.user-menu_dropdown.show {
			display: block;
		}

		.user-menu_info {
			padding: 14px 16px;
			border-bottom: 1px solid var(--border-color, #E5E5E5);
		}

		.user-menu_name {
			display: block;
			font-weight: 600;
			font-size: 14px;
			color: var(--text-primary, #1a1a1a);
			margin-bottom: 2px;
		}

		.user-menu_email {
			display: block;
			font-size: 12px;
			color: var(--text-secondary, #737373);
			direction: ltr;
			text-align: right;
		}

		.user-menu_logout {
			display: flex;
			align-items: center;
			gap: 8px;
			width: 100%;
			padding: 12px 16px;
			background: none;
			border: none;
			cursor: pointer;
			font-size: 14px;
			color: #DC2626;
			font-family: inherit;
			transition: background 0.2s;
		}

		.user-menu_logout:hover {
			background: rgba(220, 38, 38, 0.06);
		}

		.user-menu_logout svg {
			color: #DC2626;
		}


		.search-form {
			display: flex;
			align-items: center;
			gap: 12px;

			.search-form_label {
				position: relative;
				display: block;
				min-width: 368px;

				.search-form_icon {
					position: absolute;
					right: 12px;
					top: 13px;
					width: 20px;
					height: 20px;
				}
			}

			.search-form_input {
				width: 100%;
				padding: 11px 40px 11px 12px;
				border-radius: 8px;
				border: 1px solid #E5E5E5;

				&:focus {
					outline-color: #8A1739;
				}

				[data-theme=dark] & {
					background-color: #171717;
					border-color: #404040;
					color: #fff;
				}
			}

			.search-form_btn {
				padding: 10px;
				border-radius: 8px;
				background: #F9EBEF;
			}
		}
	}
}

/* aside css starts here */
.aside {
	border-left: 1px solid #E5E5E5;
	padding: 20px;
	width: 280px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-color: #fff;

	[data-theme=dark] & {
		background-color: #000;
		border-color: #262626;
	}

	@media (width < 768px) {
		padding: 8px 20px;
		position: fixed;
		top: 0;
		right: -280px;
		z-index: 1000;
		border-left: none;
		border-right: 1px solid #E5E5E5;

	}

	.aside-top_wrapper {
		margin-bottom: 40px;

		@media (width < 768px) {
			display: flex;
			align-items: center;
			gap: 16px;
		}

		.wrapper-home {
			font-size: 18px;
			font-weight: 700;
			color: #1F2937;

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		.wrapper-close-btn {
			display: none;
			border-radius: 8px;
			border: 1px solid #E5E7EB;
			background: #FFF;
			padding: 8px;

			[data-theme=dark] & {
				background-color: #171717;
				border-color: #404040;

				svg path {
					stroke: #fff;
				}
			}

			@media (width < 768px) {
				display: block;
			}
		}
	}

	&.aside-open {
		width: 100%;

		@media (width < 768px) {
			right: 0;
		}
	}
}

.aside-top-logo {
	display: flex;
	align-items: center;
	gap: 4px;

	img.islam-dark,
	img.islam-light {
		width: 108px;
	}

	img.islam-dark {
		display: none;
	}

	[data-theme=dark] & {
		img.islam-dark {
			display: block;
		}

		img.islam-light {
			display: none;
		}
	}
}

.aside-nav_list {
	.list-item {
		padding: 8px 12px;
		color: #171717;
		background-color: transparent;
		transition: all .2s;
		border-radius: 8px;

		[data-theme=dark] & {
			color: #FAFAFA;
		}

		&:hover,
		&.active {
			color: #8A1739;
			background-color: #F9EBEF;

			[data-theme=dark] & {
				background-color: #4D0017;
				color: #fff;
			}
		}

		&:not(:last-child) {
			margin-bottom: 8px;
		}
	}

	.list-item_link {
		display: flex;
		align-items: center;
		gap: 8px;
	}
}

.aside-note {
	padding: 12px 16px;
	border-radius: 10px;
	border: 0.5px solid #F5A623;
	background: #FCF5E9;

	[data-theme=dark] & {
		background: #4D2F00;
	}

	p:first-child {
		display: flex;
		align-items: center;
		gap: 4px;
		color: #171717;
		font-size: 14px;
		font-weight: 600;
		margin-bottom: 6px;

		[data-theme=dark] & {
			color: #FAFAFA;
		}
	}

	p:last-child {
		color: #525252;
		font-size: 12px;
		font-weight: 400;

		[data-theme=dark] & {
			color: #D4D4D4;
		}
	}
}

.aside-app-by {
	margin-top: 20px;

	p {
		color: #737373;
		font-size: 14px;
		font-weight: 600;
	}

	.aside-top-logo {
		margin-bottom: 0;
		margin-top: 8px;
	}
}

/* Share Dialog Styles */
.share-dialog {
	border: none;
	padding: 0;
	background: transparent;
	max-width: 520px;
	width: 90%;
	border-radius: 16px;

	&::backdrop {
		background: rgba(0, 0, 0, 0.5);
		backdrop-filter: blur(4px);
	}

	@media (width < 768px) {
		max-width: 100%;
		width: 100%;
		margin: 0;
		bottom: 0;
		top: auto;
		border-radius: 24px 24px 0 0;
	}

	.share-dialog_wrapper {
		background: white;
		padding: 32px 20px;
		border-radius: 16px;
		position: relative;

		@media (width < 768px) {
			border-radius: 24px 24px 0 0;
		}

		[data-theme=dark] & {
			background: #171717;
		}
	}

	.share-dialog_close {
		margin-right: auto;
		display: flex;
		align-items: center;
		justify-content: center;
		background: transparent;

		[data-theme=dark] & {
			svg path {
				stroke: #fff;
			}
		}
	}

	.share-dialog_title {
		color: #171717;
		font-size: 16px;
		font-weight: 700;
		text-align: center;
		margin-bottom: 36px;
		margin-top: 16px;

		[data-theme=dark] & {
			color: #fff;
		}
	}

	.share-dialog_options {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 24px;

		@media (width < 768px) {
			gap: 16px;
		}
	}

	.share-option {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 12px;
		cursor: pointer;
		background: transparent;
		transition: transform 0.2s;

		&:hover {
			transform: translateY(-4px);
		}

		@media (width < 768px) {
			gap: 8px;
		}

		.share-option_icon {
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 11px;
			border-radius: 50%;
			background: #E5E5E5;

			svg {
				width: 22px;
				height: 22px;
			}
		}

		&:last-child {
			.share-option_icon {
				background-color: #F9EBEF;
			}
		}
	}


	.share-option_label {
		color: #171717;
		font-size: 14px;
		font-weight: 500;
		text-align: center;

		[data-theme=dark] & {
			color: #fff;
		}

		@media (width < 768px) {
			font-size: 13px;
		}
	}
}

/* main cards container css starts here */
main.main {
	height: 100dvh;
	width: 100%;
	position: relative;

	.bg-calligraphy {
		position: absolute;
		top: 50%;
		left: 0;
		width: 100%;
		height: 30%;
		z-index: 0;
		background-image:
			/* url('./images/bg-calligraphy-full.svg') */
			none;
		background-repeat: repeat-x;
		background-size: auto 100%;
		background-position: center top;
		opacity: 0.5;

		[data-theme=dark] & {
			background-image:
				/* url('./images/bg-calligraphy-dark.svg') */
				none;
		}

		@media (width < 768px) {
			top: 56px;
		}

		img {
			display: none;
		}

		&.right {
			right: 0;
			left: auto;
		}

		&.left {
			left: 0;
		}
	}
}

.container {
	max-width: 1096px;
	margin: 0 auto;
	position: relative;
	box-shadow: 0 120px 200px 20px rgba(2, 3, 3, 0.10);
	background-color: var(--bg-card);

	@media (width < 1500px) {
		max-width: 872px;
	}
}

.cards-wrapper {
	max-width: 1096px;
	height: calc(100dvh - 74px);
	margin: 0 auto;
	overflow: hidden;
	/* Hide the sliding inner container */
	position: relative;
	scrollbar-width: none;
	-ms-overflow-style: none;

	&::-webkit-scrollbar {
		display: none;
	}

	@media (width < 1500px) {
		max-width: 872px;
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
	}
}

.cards-inner {
	width: 100%;
	height: 100%;
	will-change: transform;
	display: flex;
	flex-direction: column;
}

.cards-wrapper_card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	width: 100%;
	max-width: 1096px;
	height: 100%;
	/* Occupy full container height */
	overflow-y: auto;
	/* Internal scroll allowed if content is long */
	margin: 0 auto;
	padding: 32px 40px;
	background-color: var(--bg-card);
	scroll-snap-align: none;
	scroll-snap-stop: none;
	flex-shrink: 0;
	scrollbar-width: none;
	-ms-overflow-style: none;



	&::-webkit-scrollbar {
		display: none;
	}

	opacity: 0;
	transition: opacity 0.8s ease-in-out;
	/* Smooth transition */
	will-change: opacity;

	&.active {
		opacity: 1;
	}

	@media (width < 1500px) {
		max-width: 872px;
	}

	@media (width < 768px) {
		padding: 20px 20px 24px;
	}

	.card-breadcrumb {
		display: flex;
		align-items: center;
		margin-bottom: 12px;

		.card-breadcrumb_item {
			padding: 4px 8px;
			background-color: #F3F4F6;
			border-radius: 6px;
			font-size: 14px;
			font-weight: 500;
			color: #4B5563;

			[data-theme=dark] & {
				color: #fff;
				background-color: #000;
			}

			&:not(:first-child) {
				margin-right: 36px;
				position: relative;

				&::before {
					content: url('../images/chevron-left.svg');
					position: absolute;
					right: -26px;
					top: 50%;
					transform: translateY(-50%);
					width: 20px;
					height: 20px;
				}
			}
		}
	}

	.card-title {
		color: #8A1739;
		font-size: 18px;
		font-weight: 700;
		margin-bottom: 12px;
		display: flex;
		align-items: center;

		@media (width < 768px) {
			flex-direction: column;
			align-items: start;
			gap: 12px;
		}

		.card-title_id {
			padding: 2px 6px;
			background-color: #F9EBEF;
			border: 1px solid #8A1739;
			border-radius: 6px;
			margin-left: 12px;
		}

		.card-title_text {
			padding-right: 12px;
			border-right: 1px dotted #9CA3AF;

			@media (width < 768px) {
				padding-right: 0;
				border-right: none;
			}
		}

		[data-theme=dark] & {
			color: #BF2453;
		}
	}

	.card-desc {
		color: #262626;
		font-size: 18px;
		font-weight: 600;
		margin-bottom: 20px;

		[data-theme=dark] & {
			color: #F5F5F5;
		}
	}

	.card-ai-answer-box {
		padding: 20px;
		border: 1px solid #D1D5DB;
		border-radius: 10px;
		background-color: #F9FAFB;
		margin-bottom: 16px;

		[data-theme=dark] & {
			background-color: transparent;
			border-color: #404040;
		}

		.card-ai-answer-box_top {
			display: flex;
			justify-content: space-between;
			gap: 16px;
			margin-bottom: 6px;

			.top-title {
				display: flex;
				align-items: center;
				gap: 6px;
				color: #082D61;
				font-weight: 700;

				[data-theme=dark] & {
					color: #2673DF;
				}
			}

			.top-info {
				cursor: pointer;
			}
		}

		.card-ai-answer-box_answer {
			color: #4B5563;
			font-weight: 600;

			[data-theme=dark] & {
				color: #E5E7EB;
			}

			a {
				font-weight: 700;
				color: #8A1739;
				text-decoration: underline;
				text-underline-offset: 3px;
			}
		}
	}

	.card-answer {
		margin-bottom: 20px;
		position: relative;
		padding: 16px;
		border-radius: 12px;

		[data-theme=dark] & {
			background: none;
			border-top: 1px solid #7a143184;
			border-right: 1px solid #7a143184;
			border-left: 1px solid #7a143184;

			&::before {
				display: none;
			}
		}

		&::before {
			content: '';
			position: absolute;
			inset: 0;
			border-radius: 12px;
			padding: 1px;
			background: linear-gradient(to bottom, rgb(138 23 58 / 36%) 0%, #F5E8EC 100%);
			mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
			-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
			-webkit-mask-composite: xor;
			mask-composite: exclude;
			pointer-events: none;
		}

		.card-answer_head {
			color: #8A1739;
			font-size: 18px;
			font-weight: 700;
			margin-bottom: 8px;

			[data-theme=dark] & {
				color: #BF2453;
			}
		}

		.card-answer_content {
			color: #404040;
			font-size: 18px;
			font-weight: 400;
			max-height: 170px;
			overflow: hidden;
			position: relative;
			transition: max-height 0.4s ease;

			&.expanded {
				max-height: none;
			}

			&:not(.expanded)::after {
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				right: 0;
				height: 100px;
				background: linear-gradient(to bottom, rgba(250, 250, 250, 0), #fff);
				pointer-events: none;
			}

			[data-theme=dark] & {
				color: #E5E5E5;
				filter: invert(1);
				color: #000;

				&:not(.expanded)::after {
					background: linear-gradient(to bottom, rgba(23, 23, 23, 0), #171717);
					filter: invert(1);
				}
			}

			p {
				margin-bottom: 16px;
			}

			a {
				text-decoration: underline;
				text-underline-offset: 3px;
				color: #8A1739 !important;
				font-weight: 700;
			}

			table {
				width: 100%;
				border-collapse: collapse;
				margin: 20px 0;
				background-color: #fff;
				border-radius: 8px;
				overflow: hidden;
				box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);

				[data-theme=dark] & {
					background-color: transparent;
					box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
				}

				thead {
					background: linear-gradient(135deg, #8A1739 0%, #a91d45 100%);
					color: #fff;
				}

				th {
					padding: 12px 16px;
					text-align: right;
					font-weight: 700;
					font-size: 16px;
					border-bottom: 2px solid #7a1431;
				}

				td {
					padding: 12px 16px;
					text-align: right;
					border-bottom: 1px solid #E5E5E5;

					[data-theme=dark] & {
						border-bottom-color: #262626;
						color: #E5E5E5;
					}
				}

				tbody tr {
					transition: background-color 0.2s ease;
				}

				tbody tr:hover {
					background-color: #F9EBEF;
				}

				tbody tr:last-child td {
					border-bottom: none;
				}

				tbody tr:nth-child(even) {
					background-color: #FAFAFA;

					[data-theme=dark] & {
						background-color: #0A0A0A;
					}
				}

				tbody tr:nth-child(even):hover {
					background-color: #F9EBEF;
				}

				@media (width < 768px) {
					table {
						font-size: 14px;
						margin: 16px 0;
					}

					th,
					td {
						padding: 10px 12px;
						font-size: 14px;
					}
				}
			}
		}

		.card-answer_content * {
			font-size: 18px;
			line-height: 28px;
			font-weight: 400;
			font-family: 'Cairo';
		}

		.card-answer_expand {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 8px;
			padding-top: 6px;
			color: #8A1739;
			font-size: 16px;
			font-weight: 600;

			[data-theme=dark] & {
				color: #BF2453;
			}

			&.hidden {
				display: none;
			}

			svg {
				transition: stroke 0.3s ease;
			}
		}
	}

	.card-actions {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		column-gap: 44px;
		position: sticky;
		bottom: -31px;
		background-color: #fff;
		padding-top: 16px;
		border-top: 1px solid #E5E7EB;
		padding-bottom: 22px;
		z-index: 10;

		[data-theme=dark] & {
			background: #171717;
		}

		.card-actions_audio-player {
			flex: 0 0 100%;
			padding-bottom: 16px;
			border-bottom: 1px solid #E5E7EB;
			margin-bottom: 16px;
		}

		.card-actions_btn {
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			gap: 6px;
			transition: all 0.3s ease;

			[data-theme=dark] & {
				color: #fff;

				svg path {
					stroke: #fff;
				}
			}

			&.liked svg path {
				fill: #8A1739;
				stroke: #8A1739;
			}

			&.saved svg path {
				fill: #1551A5;
				stroke: #1551A5;
			}
		}
	}
}

.cards-wrapper_controls {
	position: absolute;
	left: -80px;
	bottom: 90px;

	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;

	@media (width < 768px) {
		display: none;
	}

	.controls_btn {
		background-color: #fff;
		padding: 12px;
		border-radius: 50%;
		border: 1px solid #E5E5E5;
		aspect-ratio: 1/1;
		transition: all .2s;

		[data-theme=dark] & {
			background-color: #000;
			border-color: #404040;
		}

		&:hover:not(:disabled) {
			border-color: #8A1739;
		}

		&:disabled {
			background-color: #F5F5F5;
			border-color: #D3D3D3;
			opacity: 0.6;
			cursor: not-allowed;

			[data-theme=dark] & {
				background-color: #171717;
				border-color: #404040;
			}
		}

		&.saved {
			svg {
				fill: #1551A5;

				path {
					stroke: #1551A5;
				}
			}
		}

		&.liked {
			svg {
				fill: #8A1739;

				path {
					stroke: #8A1739;
				}
			}
		}
	}
}

.loader-card {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	scroll-snap-align: start;
	scroll-snap-stop: always;
	flex-shrink: 0;

	.loader {
		width: 48px;
		height: 48px;
		border: 4px solid #F9EBEF;
		border-top-color: #8A1739;
		border-radius: 50%;
		animation: spin 1s linear infinite;
	}
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

/* search pgae starts here */
.container.search-page {
	max-width: 1096px;
	height: calc(100dvh - 74px);
	margin: 0 auto;
	scrollbar-width: none;
	padding: 16px 20px;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */

	&::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, Opera */
	}

	@media (width < 1500px) {
		max-width: 872px;
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
	}

	[data-theme=dark] & {
		background-color: #171717;
	}

	&:has(.search-details-wrapper.hidden) {
		overflow-y: scroll;
		overflow-x: hidden;
	}
}

.no-results {
	padding: 32px 0;
	max-width: 648px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	flex-direction: column;

	.svg-icon {
		background-color: #F9EBEF;
		border-radius: 50%;
		padding: 22px;
		margin-bottom: 20px;

		@media (width < 768px) {
			padding: 14px;

			svg {
				width: 36px;
				height: 36px;
			}
		}
	}

	.no-results_title {
		font-weight: 700;
		color: #8A1739;
		margin-bottom: 10px;
		text-align: center;

		@media (width > 768px) {
			font-size: 18px;
		}
	}

	.no-results_desc {
		color: #4B5563;
		margin-bottom: 20px;
		text-align: center;

		[data-theme=dark] & {
			color: #E5E7EB;
		}
	}

	.no-results_media {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;

		@media (width < 768px) {
			grid-template-columns: repeat(1, 1fr);
		}

		.media-box.whatsapp {
			.top-icon {
				background-color: rgba(37, 211, 102, 0.10);
			}

			.media-box_link {
				background-color: #25D366;
			}
		}

		.media-box.telegram {
			.top-icon {
				background-color: rgba(0, 136, 204, 0.10);
			}

			.media-box_link {
				background-color: #0088CC;
			}
		}

		.media-box {
			padding: 20px;
			border-radius: 10px;
			border: 1px solid #E5E7EB;
			box-shadow: 0 0 20px -6px rgba(3, 7, 18, 0.30);

			.media-box_top {
				@media (width < 768px) {
					display: flex;
					align-items: center;
					gap: 10px;
				}

				.top-icon {
					padding: 14px;
					border-radius: 50%;
					display: none;

					@media (width < 768px) {
						display: block;
					}
				}

				.top-title {
					color: #1F2937;
					font-weight: 700;
					margin-bottom: 4px;

					@media (width > 768px) {
						margin-bottom: 10px;
						text-align: center;
					}

					[data-theme=dark] & {
						color: #E5E7EB;
					}
				}

				.top-desc {
					color: #4B5563;
					font-size: 14px;

					[data-theme=dark] & {
						color: #E5E7EB;
					}

					@media (width > 768px) {
						margin-bottom: 10px;
						text-align: center;
					}
				}

			}

			.media-box_qr .qr-img-wrapper {
				height: 195px;
				width: auto;

				@media (width < 768px) {
					display: none;
				}

				img {
					width: 100%;
					height: 100%;
					object-fit: contain;
				}
			}

			.media-box_link {
				display: block;
				text-align: center;
				margin-top: 10px;
				padding: 10px 16px;
				border-radius: 8px;
				color: #fff;

				@media (width < 768px) {
					margin-top: 16px;
				}
			}
		}
	}
}

.statement-wrapper {
	padding: 24px;
	border: 1px solid #E5E7EB;
	border-radius: 8px;
	margin-top: 20px;

	[data-theme=dark] & {
		border-color: #262626;
	}

	.statement {
		max-width: 864px;
		width: 100%;
		margin: 0 auto;
	}

	.statement_top {
		display: flex;
		align-items: center;
		gap: 16px;
		position: relative;
		margin-bottom: 20px;

		>div {
			width: 100%;
		}

		@media (width < 768px) {
			display: block;
		}

		.top-icon {
			width: fit-content;
			padding: 14px;
			background-color: #F3F4F6;
			border-radius: 50%;

			@media (width < 768px) {
				margin-bottom: 16px;
			}
		}

		.top-tile-tag {
			display: flex;
			align-items: center;
			justify-content: space-between;
			margin-bottom: 8px;

			.top-tile-tag_title {
				font-size: 18px;
				font-weight: 700;
				color: #1F2937;

				[data-theme=dark] & {
					color: #E5E5E5;
				}
			}

			.top-tile-tag_tag {
				padding: 4px 8px;
				background-color: #F9EBEF;
				border-radius: 6px;
				color: #8A1739;
				font-size: 14px;
				font-weight: 500;

				@media (width < 768px) {
					position: absolute;
					top: 0;
					left: 0;
					width: max-content;
				}
			}
		}

		.top-desc {
			color: #4B5563;

			[data-theme=dark] & {
				color: #E5E5E5;
			}
		}
	}

	.statement_links {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;

		@media (width < 768px) {
			grid-template-columns: repeat(1, 1fr);
			gap: 16px;
		}

		.links-item {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 6px;
			width: 100%;
			padding: 10px 16px;
			color: #fff;
			font-weight: 500;
			border-radius: 8px;

			&.whatsapp {
				background-color: #25D366;
			}

			&.telegram {
				background-color: #0088CC;
			}
		}
	}
}

.results-found {
	margin-top: 24px;
	color: #737373;
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 16px;

	[data-theme=dark] & {
		color: #A3A3A3;
	}

	.results-found_query {
		color: #8A1739;
	}

}

.results-found_details {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	padding-bottom: 20px;
	position: sticky;
	top: 0;

	.results-found_back {
		color: #8A1739;
		font-size: 18px;
		font-weight: 700;
		display: flex;
		align-items: center;
		gap: 6px;
		text-wrap-mode: nowrap;
	}

	.results-found_query {
		color: #8A1739;
	}

	.results-found_count {
		color: #737373;

		[data-theme=dark] & {
			color: #A3A3A3;
		}
	}

	.current,
	.total {
		color: #8A1739;
	}
}

.search-cards-wrapper_card {
	padding: 16px;
	border: 1px solid #E5E7EB;
	border-radius: 8px;
	background-color: transparent;
	transition: all .3s;

	[data-theme=dark] & {
		border-color: #262626;

		&:hover {
			background-color: #262626;
		}
	}

	@media (width < 768px) {
		position: relative;
		padding-inline: 24px;
	}

	&:not(:first-child) {
		margin-top: 20px;
	}

	&:hover {
		background-color: #f9fafb;
	}

	.card-title {
		color: #111827;
		font-weight: 700;
		margin-bottom: 12px;

		[data-theme=dark] & {
			color: #E5E5E5;
		}
	}

	.card-desc {
		color: #6B7280;
		font-weight: 600;
		margin-bottom: 20px;

		[data-theme=dark] & {
			color: #E5E5E5;
		}
	}

	.card-answer {
		display: none;
		margin-bottom: 12px;
		color: #404040;
		font-size: 14px;
		font-weight: 400;
		padding: 16px;
		border-radius: 10px;
		border: 0.5px solid #E5E5E5;
		background: #FAFAFA;

		[data-theme=dark] & {
			color: #E5E5E5;
			background-color: #171717;
			border-color: #404040;
		}

		.card-answer_content {
			overflow: hidden;
			display: -webkit-box;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 3;
			line-clamp: 3;
		}
	}

	.card-view-more {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 6px;
		width: 100%;
		color: #8A1739;
		font-size: 14px;
		font-weight: 700;

		[data-theme=dark] & {
			color: #BF2453;
		}

		@media (width < 768px) {
			.btn-text {
				display: none;
			}

			svg {
				position: absolute;
				top: 40%;
				left: 0;
				width: 24px;
				height: 24px;
			}

			&::before {
				content: '';
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
			}
		}
	}
}

.search-details-wrapper {
	max-width: 1096px;
	height: calc(100dvh - 140px);
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	scrollbar-width: none;
	-ms-overflow-style: none;

	.cards-wrapper_card {
		padding: 20px 0 0 0;
		height: calc(100dvh - 140px);

		.card-actions {
			padding-bottom: 40px;
		}
	}
}

/* Search Details Overlay Styles */
.search-details-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.3);
	backdrop-filter: blur(4px);
	z-index: 1000;
	display: none;


	@media(width < 768px) {
		padding-top: 50px;
	}

	&.active {
		display: block;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.details-modal {
		position: relative;
		width: 100%;
		height: calc(100dvh - 100px);
		background: white;
		border-radius: 24px;
		display: flex;
		flex-direction: column;
		/* overflow: hidden; */
		width: fit-content;

		[data-theme=dark] & {
			background: #171717;
		}

		@media (width < 768px) {
			height: calc(100dvh - 50px);
			border-radius: 24px 24px 0 0;
		}

		.details-overlay_close {
			position: absolute;
			top: 16px;
			left: 16px;
			width: 40px;
			height: 40px;
			display: flex;
			align-items: center;
			justify-content: center;
			border-radius: 8px;
			cursor: pointer;
			z-index: 10;
			background-color: #fff;

			[data-theme=dark] & {
				background: #000;

				svg path {
					stroke: #fff;
				}
			}

			@media (width < 768px) {
				width: 36px;
				height: 36px;
			}
		}

		.results-found_details {
			position: absolute;
			top: 16px;
			right: 16px;
			z-index: 10;
			background-color: #fff;
			padding: 8px 16px;
			border-radius: 8px;
			box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

			[data-theme=dark] & {
				background: #000;
				box-shadow: 0 2px 8px rgba(255, 255, 255, 0.1);
			}

			@media (width < 768px) {
				top: 12px;
				right: 12px;
				padding: 6px 12px;
				font-size: 14px;
			}

			.results-found_count {
				margin: 0;
				font-weight: 600;
			}
		}

		.details-overlay_wrapper {
			flex: 1;
			overflow-y: auto;
			scroll-snap-type: y mandatory;
			scroll-behavior: smooth;
			scrollbar-width: none;
			-ms-overflow-style: none;

			&::-webkit-scrollbar {
				display: none;
			}
		}

		.details-card {
			min-height: 100%;
			display: flex;
			flex-direction: column;
			scroll-snap-align: start;
			scroll-snap-stop: always;
			padding: 60px 20px 24px;

			@media (width >=768px) {
				padding: 80px 40px 40px;
			}

			.details-card_inner {
				max-width: 872px;
				margin: 0 auto;
				width: 100%;
				flex: 1;
				display: flex;
				flex-direction: column;
			}

			&>.details-card_inner>div:first-child {
				flex: 1;
				margin-bottom: 20px;
			}

			.card-title {
				color: #8A1739;
				font-size: 20px;
				font-weight: 700;
				margin-bottom: 12px;

				@media (width < 768px) {
					font-size: 18px;
				}

				[data-theme=dark] & {
					color: #BF2453;
				}
			}

			.card-desc {
				color: #262626;
				font-size: 18px;
				font-weight: 600;
				margin-bottom: 20px;

				@media (width < 768px) {
					font-size: 16px;
				}

				[data-theme=dark] & {
					color: #F5F5F5;
				}
			}

			.card-answer {
				background: linear-gradient(180deg, #FAFAFA 0%, rgba(255, 255, 255, 0.10) 100%);
				border-radius: 12px;
				padding: 20px;
				position: relative;
				margin-bottom: 20px;

				[data-theme=dark] & {
					background: none;
					border-top: 1px solid #7a143184;
					border-right: 1px solid #7a143184;
					border-left: 1px solid #7a143184;

					&::before {
						display: none;
					}
				}

				&::before {
					content: '';
					position: absolute;
					inset: 0;
					border-radius: 12px;
					padding: 1px;
					background: linear-gradient(to bottom, rgb(138 23 58 / 36%) 0%, #F5E8EC 100%);
					mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
					-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
					-webkit-mask-composite: xor;
					mask-composite: exclude;
					pointer-events: none;
				}

				.card-answer_head {
					color: #8A1739;
					font-size: 18px;
					font-weight: 700;
					margin-bottom: 8px;

					@media (width < 768px) {
						font-size: 16px;
					}

					[data-theme=dark] & {
						color: #BF2453;
					}
				}

				.card-answer_content {
					color: #404040;
					font-size: 16px;
					font-weight: 400;

					[data-theme=dark] & {
						color: #E5E5E5;
					}

					@media (width < 768px) {
						font-size: 14px;
					}
				}
			}

			.card-actions {
				display: none;

				@media (width < 768px) {
					display: flex;
					align-items: center;
					justify-content: center;
					gap: 24px;
					padding: 16px 0;
					position: sticky;
					bottom: 0;
					background: linear-gradient(to top, #ffffff 80%, rgba(255, 255, 255, 0.95) 90%, rgba(255, 255, 255, 0) 100%);
					z-index: 10;

					[data-theme=dark] & {
						background: #171717;
					}
				}

				.card-actions_btn {
					display: flex;
					flex-direction: column;
					align-items: center;
					justify-content: center;
					gap: 4px;
					color: #737373;
					font-size: 14px;
					font-weight: 400;
					cursor: pointer;
					transition: color 0.2s;

					[data-theme=dark] & {
						color: #fff;

						svg path {
							stroke: #fff;
						}
					}

					&.liked {
						svg {
							fill: #8A1739;
						}

						svg path {
							stroke: #8A1739;
						}
					}

					&.saved {
						svg {
							fill: #1551A5;
						}

						svg path {
							stroke: #1551A5;
						}
					}

					@media (width < 768px) {
						font-size: 12px;
					}
				}
			}
		}
	}
}

/* Privacy Policy Page Styles */
.container.privacy-page {
	background-color: #fff;
	padding: 20px;
	height: calc(100dvh - 74px);

	overflow-y: scroll;
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */

	&::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, Opera */
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
	}

	[data-theme=dark] & {
		background-color: #171717;
	}
}

.policy-header {
	margin-bottom: 32px;
	text-align: right;

	.policy-title {
		color: #8A1739;
		font-size: 24px;
		font-weight: 700;
		margin-bottom: 8px;

		@media (width < 768px) {
			font-size: 20px;
		}
	}

	.policy-date {
		color: #737373;
		font-size: 14px;
		font-weight: 400;
	}
}

.policy-content {
	.policy-intro {
		color: #262626;
		font-size: 16px;
		font-weight: 400;
		line-height: 1.8;
		margin-bottom: 32px;
		text-align: right;

		[data-theme=dark] & {
			color: #E5E5E5;
		}
	}

	.policy-section {
		margin-bottom: 32px;

		.section-title {
			color: #262626;
			font-size: 18px;
			font-weight: 700;
			margin-bottom: 16px;
			text-align: right;

			[data-theme=dark] & {
				color: #E5E5E5;
			}

			@media (width < 768px) {
				font-size: 16px;
			}
		}

		.section-list {
			list-style: none;
			padding: 0;
			margin: 0;

			li {
				color: #404040;
				font-size: 16px;
				font-weight: 400;
				line-height: 1.8;
				margin-bottom: 12px;
				padding-right: 24px;
				position: relative;
				text-align: right;

				[data-theme=dark] & {
					color: #E5E5E5;

					&::before {
						background-color: #E5E5E5;
					}
				}

				&::before {
					content: "";
					position: absolute;
					right: 8px;
					top: 12px;
					width: 6px;
					height: 6px;
					border-radius: 50%;
					background-color: #8A1739;
				}

				@media (width < 768px) {
					font-size: 14px;
				}
			}
		}

		.section-text {
			color: #404040;
			font-size: 16px;
			font-weight: 400;
			line-height: 1.8;
			text-align: right;

			[data-theme=dark] & {
				color: #E5E5E5;
			}

			@media (width < 768px) {
				font-size: 14px;
			}
		}
	}
}

/* saved css starts here */
.saved-wrapper {
	background-color: #fff;
	padding: 20px;
	height: calc(100dvh - 74px);

	overflow-y: scroll;
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */

	&::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, Opera */
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
		padding: 20px 0;
	}

	[data-theme=dark] & {
		background-color: #171717;
	}

	.profile-tabs {
		display: none;
	}
}

.saved-wrapper_title {
	color: #8A1739;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;

	display: flex;
	align-items: center;
	gap: 12px;

	@media (width < 768px) {
		padding-inline: 20px;
	}
}

.saved-wrapper_cards {
	.saved-card {
		display: block;
		padding: 20px;
		border: 1px solid #E5E5E5;
		border-radius: 10px;

		[data-theme=dark] & {
			border-color: #404040;
		}

		&:not(:last-child) {
			margin-bottom: 20px;
		}

		@media (width < 768px) {
			border: unset;
			border-radius: unset;
			border-bottom: 8px solid #F5F5F5;

			&:not(:last-child) {
				margin-bottom: 0;
			}
		}
	}

	.saved-card_title {
		color: #0A0A0A;
		font-weight: 700;
		margin-bottom: 12px;
		display: flex;
		justify-content: space-between;
		gap: 20px;

		[data-theme=dark] & {
			color: #fff;
		}

		.card-actions_btn {
			&.saved {
				svg path {
					fill: #1551A5;
					stroke: #1551A5;
				}
			}
		}
	}

	.saved-card_desc {
		color: #404040;
		font-weight: 600;
		margin-bottom: 20px;

		[data-theme=dark] & {
			color: #E5E5E5;
		}
	}

	.saved-card_card-actions {
		display: flex;
		align-items: center;
		justify-content: space-between;

		.card-actions {
			display: flex;
			align-items: center;
			gap: 12px;

			.card-actions_btn {
				padding: 6px 8px;
				border-radius: 8px;
				background-color: #F5F5F5;

				[data-theme=dark] & {
					background-color: #262626;
				}

				&:nth-child(2) {
					svg path {
						stroke: #737373;
						stroke-width: 2px;
					}
				}

				&.saved {
					background-color: #EAF1FB;

					[data-theme=dark] & {
						background-color: #262626;
					}

					svg path {
						fill: #1551A5;
						stroke: #1551A5;
					}
				}

				&.liked {
					background-color: #F9EBEF;

					[data-theme=dark] & {
						background-color: #4D0017;
					}

					svg {
						fill: #8A1739;
					}

					svg path {
						stroke: #8A1739;
					}
				}
			}
		}

		.card-actions_view-more {
			display: flex;
			align-items: center;
			gap: 8px;
			color: #8A1739;
			font-size: 14px;
			font-weight: 500;
		}
	}
}

.saved-detail-wrapper {
	padding: 32px 40px;
	background-color: #fff;
	height: calc(100dvh - 74px);
	overflow-y: scroll;
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */

	&::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, Opera */
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
	}

	.saved-wrapper_title {
		@media (width < 768px) {
			padding-inline: 0;
		}
	}

	.cards-wrapper_card {
		padding: 0;
		height: 92%;
		overflow: unset;
		scroll-snap-align: unset;
		scroll-snap-stop: unset;
	}
}

.saved-wrapper_empty {
	margin-top: 100px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;

	@media (width < 768px) {
		max-width: 310px;
		margin-inline: auto;
		text-align: center;
	}

	.empty-save {
		background-color: #F5F5F5;
		border-radius: 50%;
		padding: 18px;
	}

	.empty-title {
		color: #0A0A0A;
		font-weight: 700;

		[data-theme="dark"] & {
			color: #fff;
		}
	}

	.empty-desc {
		color: #262626;
		font-size: 14px;
		font-weight: 400;

		[data-theme="dark"] & {
			color: #E5E5E5;
		}
	}

	.empty-browse {
		border-radius: 8px;
		background-color: #8A1739;
		padding: 10px 16px;
		color: #fff;
		font-weight: 600;
	}
}

.search-loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 300px;
	font-family: inherit;

	p {
		color: #000;

		[data-theme="dark"] & {
			color: #E5E5E5;
		}
	}
}

.search-loading .spinner {
	width: 40px;
	height: 40px;
	border: 3px solid #e5e5e5;
	border-top-color: #8A1739;
	border-radius: 50%;
	animation: spin 0.8s linear infinite;
	margin-bottom: 12px;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

.hidden {
	display: none;
}

.container.profile {
	padding: 20px 40px;
	height: calc(100dvh - 74px);
	overflow-y: scroll;
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */

	&::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, Opera */
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
		padding-inline: 20px;
	}

	.top-title {
		color: #8A1739;
		font-size: 18px;
		font-weight: 700;
		margin-bottom: 8px;
	}

	.top-desc {
		color: #6B7280;
		font-size: 14px;
		margin-bottom: 40px;

		[data-theme=dark] & {
			color: #E5E7EB;
		}
	}
}


.profile-tabs {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	padding: 4px;
	border-radius: 10px;
	border: 1px solid #F3F4F6;
	background-color: #F9FAFB;
	margin-bottom: 24px;

	[data-theme=dark] & {
		background-color: #000;
		border-color: #404040;
	}

	.profile-tabs_item {
		background-color: transparent;
		color: #4B5563;
		font-size: 14px;
		font-weight: 600;
		padding: 8px 12px;
		border: 1px solid transparent;
		border-radius: 8px;
		width: max-content;

		[data-theme=dark] & {
			color: #E5E7EB;
		}

		&.active {
			background-color: #fff;
			color: #1F2937;
			border-color: #E5E7EB;
			box-shadow: 0 2px 5px 0 rgba(3, 7, 18, 0.10);
		}

		.item-link {
			display: flex;
			align-items: center;
			gap: 6px;
		}
	}
}

.profile-info {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 24px;

	.profile-info_avatar {
		padding: 20px;
		background-color: #F3F4F6;
		border-radius: 50%;
	}

	.text-name {
		color: #030712;
		font-size: 20px;
		font-weight: 700;
		margin-bottom: 4px;

		[data-theme=dark] & {
			color: #E5E7EB;
		}
	}

	.text-username {
		color: #4B5563;
	}
}

.profile-details {
	.profile-details_header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 20px;
		margin-bottom: 16px;

		.header-title {
			color: #111827;
			font-size: 18px;
			font-weight: 700;
		}

		.header-btn {
			display: flex;
			align-items: center;
			gap: 6px;
			color: #8A1739;
			font-weight: 500;
		}
	}

	.profile-details_rows {
		padding: 8px 16px;
		border: 1px solid #F3F4F6;
		border-radius: 12px;
		margin-bottom: 20px;

		.rows-item {
			padding: 8px 0;
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 16px;

			@media (width < 768px) {
				flex-direction: column;
				align-items: flex-start;
			}

			&:not(:first-child) {
				border-top: 1px solid #F3F4F6;
			}

			.rows-item_label {
				color: #111827;
				font-size: 14px;
				font-weight: 500;

				[data-theme=dark] & {
					color: #E5E7EB;
				}
			}

			.rows-item_value {
				color: #9CA3AF;
				font-size: 14px;
				font-weight: 500;
			}
		}
	}

	.delete-account {
		display: flex;
		align-items: center;
		gap: 8px;
		color: #DC3545;
		font-weight: 500;
		padding: 8px 16px;
		border: 1px solid #F3F4F6;
		border-radius: 12px;
		width: 100%;
	}
}

.selected-interests {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 12px;
	border-radius: 8px;
	background-color: #F9EBEF;
	margin-bottom: 24px;

	h3 {
		color: #111827;
		font-size: 14px;
		font-weight: 500;
	}

	.remove-all-interests {
		display: flex;
		align-items: center;
		gap: 6px;
		color: #8A1739;
		font-size: 14px;
		font-weight: 500;
	}
}

.interests-acc-container {
	.interests-acc_item {
		padding: 16px;
		border: 1px solid #E5E7EB;
		border-radius: 10px;
		margin-bottom: 12px;

		[data-theme=dark] & {
			border-color: #262626;
		}

		.item-summery {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 20px;
			cursor: pointer;
			list-style: none;

			&::-webkit-details-marker {
				display: none;
			}

			.item-summery_title {
				font-weight: 700;
				font-size: 16px;
				color: #171717;
				display: flex;
				align-items: center;
				gap: 12px;
				cursor: pointer;

				[data-theme=dark] & {
					color: #fff;
				}

				input[type="checkbox"] {
					position: absolute;
					opacity: 0;
					width: 0;
					height: 0;
				}

				.checkbox-custom {
					width: 20px;
					height: 20px;
					border: 2px solid #E5E5E5;
					border-radius: 4px;
					display: inline-flex;
					align-items: center;
					justify-content: center;
					background-color: #fff;
					transition: all 0.2s;
					flex-shrink: 0;

					[data-theme=dark] & {
						background-color: #171717;
						border-color: #404040;
					}

					&::after {
						content: '';
						width: 5px;
						height: 10px;
						border: solid white;
						border-width: 0 2px 2px 0;
						transform: rotate(45deg);
						opacity: 0;
						transition: opacity 0.2s;
					}
				}

				input[type="checkbox"]:checked+.checkbox-custom {
					background-color: #8A1739;
					border-color: #8A1739;

					&::after {
						opacity: 1;
					}
				}

				input[type="checkbox"]:indeterminate+.checkbox-custom {
					background-color: #fff;
					border-color: #8A1739;

					[data-theme=dark] & {
						background-color: #171717;
					}

					&::after {
						content: '';
						width: 10px;
						height: 2px;
						border: none;
						background-color: #8A1739;
						transform: none;
						opacity: 1;
					}
				}
			}

			.item-summery_toggle {
				background-color: #F9EBEF;
				padding: 7px;
				border-radius: 50%;
				flex-shrink: 0;

				.toggle-minus {
					display: none;
				}
			}
		}

		&[open] .item-summery .item-summery_toggle {
			background-color: #F9FAFB;

			.toggle-plus {
				display: none;
			}

			.toggle-minus {
				display: block;
			}
		}

		.item-details {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 12px;
			padding: 16px 24px 0;

			@media (width < 768px) {
				grid-template-columns: repeat(1, 1fr);
			}

			.item-details_item {
				padding: 12px;
				background-color: #f9fafb;
				border-radius: 10px;
				font-size: 14px;
				font-weight: 600;
				color: #404040;
				display: flex;
				align-items: center;
				gap: 12px;
				cursor: pointer;
				transition: all 0.2s;
				border: 1px solid transparent;

				[data-theme=dark] & {
					background-color: #171717;
					color: #A3A3A3;
				}

				&:hover {
					background-color: #F3F4F6;
					border-color: #E5E7EB;

					[data-theme=dark] & {
						background-color: #262626;
						border-color: #404040;
					}
				}

				input[type="checkbox"] {
					position: absolute;
					opacity: 0;
					width: 0;
					height: 0;
				}

				.checkbox-custom {
					width: 18px;
					height: 18px;
					border: 2px solid #E5E5E5;
					border-radius: 4px;
					display: inline-flex;
					align-items: center;
					justify-content: center;
					background-color: #fff;
					transition: all 0.2s;
					flex-shrink: 0;

					[data-theme=dark] & {
						background-color: #0a0a0a;
						border-color: #404040;
					}

					&::after {
						content: '';
						width: 4px;
						height: 8px;
						border: solid white;
						border-width: 0 2px 2px 0;
						transform: rotate(45deg);
						opacity: 0;
						transition: opacity 0.2s;
					}
				}

				input[type="checkbox"]:checked+.checkbox-custom {
					background-color: #8A1739;
					border-color: #8A1739;

					&::after {
						opacity: 1;
					}
				}
			}
		}
	}
}

.save-interests-btn {
	width: 100%;
	padding: 12px 18px;
	background-color: #8A1739;
	color: #fff;
	font-weight: 600;
	border-radius: 8px;
}

.delete-account-dialog {
	max-width: 518px;
	width: 100%;
	background-color: transparent;

	&::backdrop {
		backdrop-filter: blur(2px);
	}

	@media (width < 768px) {
		padding: 20px;
	}

	&#summery_disclaimer {
		@media (width < 768px) {
			margin: 0;
			bottom: 0;
			top: auto;
			padding: 0;

			.dialog-main {
				border-bottom-left-radius: 0;
				border-bottom-right-radius: 0;
			}
		}

		.dialog-svg {
			padding: 14px;
		}
	}

	.dialog-main {
		padding: 48px;
		display: flex;
		align-items: center;
		flex-direction: column;
		gap: 16px;
		text-align: center;
		background-color: #fff;
		border-radius: 8px;

		[data-theme=dark] & {
			background-color: #000;
		}

		@media (width < 768px) {
			padding-inline: 20px;
		}

		.dialog-svg {
			padding: 27px;
			background-color: #F9EBEF;
			border-radius: 50%;
		}

		.dialog-title {
			color: #111827;
			font-size: 20px;
			font-weight: 700;

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		.dialog-desc {
			color: #6B7280;

			[data-theme=dark] & {
				color: #9CA3AF;
			}
		}

		.dialog-actions {
			display: flex;
			align-items: center;
			gap: 16px;
			width: 100%;

			>form {
				width: 100%;
			}
		}

		.dialog-btn {
			width: 100%;
			padding: 12px 18px;
			border-radius: 8px;
			font-weight: 500;

			@media (width < 768px) {
				font-size: 14px;
			}

			&#dialog_cancel {
				color: #374151;
				border: 1px solid #E5E7EB;
			}

			&#dialog_confirm {
				background-color: #8A1739;
				color: #fff;
				border: 1px solid #8A1739;
			}

			&#close_summery_disclaimer {
				background-color: #8A1739;
				color: #fff;
				border: 1px solid #8A1739;
			}
		}
	}
}

/* Login Prompt Dialog */
.login-prompt-dialog {
	.dialog-close-btn {
		position: absolute;
		top: 16px;
		left: 16px;
		padding: 8px;
		border-radius: 50%;
		color: #6B7280;
		transition: all 0.2s;
		background: transparent;
		border: none;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;

		&:hover {
			background-color: #F3F4F6;
			color: #374151;
		}

		[data-theme=dark] & {
			color: #9CA3AF;

			&:hover {
				background-color: #1F2937;
				color: #E5E7EB;
			}
		}
	}

	.dialog-main {
		position: relative;
	}

	.login-benefits-list {
		list-style: none;
		padding: 0;
		margin: 0;
		width: 100%;
		display: flex;
		flex-direction: column;
		gap: 12px;

		li {
			display: flex;
			align-items: center;
			gap: 10px;
			font-size: 15px;
			color: #4B5563;

			[data-theme=dark] & {
				color: #D1D5DB;
			}

			svg {
				flex-shrink: 0;
			}
		}
	}

	.login-prompt-actions {
		display: flex;
		flex-direction: column;
		gap: 10px;
		width: 100%;
		margin-top: 8px;
	}

	.login-prompt-btn {
		display: block;
		width: 100%;
		padding: 13px 18px;
		border-radius: 10px;
		font-weight: 600;
		font-size: 15px;
		text-align: center;
		text-decoration: none;
		cursor: pointer;
		transition: all 0.25s ease;
		border: none;
		font-family: inherit;

		&.primary {
			background: linear-gradient(135deg, #8A1739 0%, #a91d47 100%);
			color: #fff;
			box-shadow: 0 4px 16px rgba(138, 23, 57, 0.3);

			&:hover {
				transform: translateY(-1px);
				box-shadow: 0 6px 24px rgba(138, 23, 57, 0.4);
			}
		}

		&.secondary {
			background: transparent;
			color: #6B7280;
			border: 1px solid #E5E7EB;

			[data-theme=dark] & {
				color: #9CA3AF;
				border-color: #374151;
			}

			&:hover {
				background-color: #F9FAFB;
				border-color: #D1D5DB;

				[data-theme=dark] & {
					background-color: #1F2937;
					border-color: #4B5563;
				}
			}
		}
	}
}

.back-to-profile {
	display: flex;
	align-items: center;
	gap: 16px;
	color: #1F2937;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 24px;

	[data-theme=dark] & {
		color: #E5E7EB;
	}
}

form.edit-profile-form,
form.change-password-form {
	max-width: 648px;
	margin: 0 auto;

	label {
		display: block;

		&:not(:first-child) {
			margin-top: 24px;
		}

		.input-label {
			display: block;
			margin-bottom: 4px;
			font-size: 14px;
			color: #030712;

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		&:has(.form-input[required]) .input-label::after,
		&:has(input[type="radio"][required]) .input-label::after,
		&:has(input[type="checkbox"][required]) .input-label::after {
			content: ' *';
			color: #DC3545;
		}

		.form-input {
			width: 100%;
			background-color: transparent;
			border: 1px solid #E5E7EB;
			border-radius: 8px;
			padding: 11px 12px;

			[data-theme=dark] & {
				color: #E5E7EB;
				border-color: #374151;
			}
		}

		select.form-input {
			appearance: none;
			position: relative;
			background-repeat: no-repeat;
			background-image:
				/* url('./assets/auth/images/arrow-down.svg') */
				none;
			background-position-x: 10px;
			background-position-y: 50%;
			background-size: 18px;

			[data-theme=dark] & {
				background-color: #030712;
			}
		}

		&.radio {
			display: flex;
			align-items: center;
			justify-content: space-between;

			.radio-inputs {
				display: flex;
				align-items: center;
				gap: 12px;

				.radio-option {
					display: flex;
					align-items: center;
					justify-content: center;
					gap: 8px;
					margin: 0;

					input[type="radio"] {
						width: 20px;
						height: 20px;
						accent-color: #8A1739;
						cursor: pointer;
					}

					span {
						color: #4B5563;

						[data-theme=dark] & {
							color: #E5E7EB;
						}
					}
				}
			}
		}

		input[type="date"],
		input[type="datetime-local"] {
			text-align: right;
			position: relative;
		}

		input[type="date"]::-webkit-calendar-picker-indicator,
		input[type="datetime-local"]::-webkit-calendar-picker-indicator {
			background-image:
				/* url('./assets/auth/images/calendar.svg') */
				none;
			background-repeat: no-repeat;
			background-size: 24px 24px;
			width: 24px;
			height: 24px;
			cursor: pointer;
			position: absolute;
			left: 16px;
		}

		.pass-toggle {
			position: absolute;
			left: 12px;
			top: 50%;
			transform: translateY(-50%);
		}
	}

	.grid-3 {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 16px;
		margin-bottom: 24px;

		@media (width < 768px) {
			grid-template-columns: repeat(1, 1fr);
			gap: 24px;
		}

		>label {
			margin: 0;
		}
	}

	.form-actions {
		display: flex;
		align-items: center;
		gap: 20px;
		margin-top: 24px;
	}

	.form-cancel-btn {
		text-align: center;
		padding: 12px 18px;
		color: #374151;
		font-weight: 500;
		border: 1px solid #E5E7EB;
		border-radius: 8px;
		width: 100%;

		[data-theme=dark] & {
			color: #E5E7EB;
		}
	}

	.form-submit-btn {
		padding: 12px 18px;
		background-color: #8A1739;
		color: #fff;
		font-weight: 500;
		border: 1px solid #8A1739;
		border-radius: 8px;
		width: 100%;

		&.mt {
			margin-top: 24px;
		}
	}

	.form-error {
		color: #fff;
		background-color: #DC3545;
		padding: 12px 18px;
		border-radius: 8px;
		font-size: 14px;
		margin-top: 12px;
		text-align: center;
	}
}

.change-success-dialog {
	max-width: 518px;
	width: 100%;
	background-color: transparent;

	&::backdrop {
		backdrop-filter: blur(2px);
	}

	@media (width < 768px) {
		padding: 20px;
	}

	.dialog-main {
		padding: 48px;
		display: flex;
		align-items: center;
		flex-direction: column;
		gap: 16px;
		text-align: center;
		background-color: #fff;
		border-radius: 8px;

		[data-theme=dark] & {
			background-color: #000;
		}

		.dialog-svg {
			padding: 27px;
			background-color: #EBFAF7;
			border-radius: 50%;

			[data-theme=dark] & {
				background-color: #004D3E;
			}
		}

		.dialog-title {
			color: #111827;
			font-size: 20px;
			font-weight: 700;

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		.dialog-desc {
			color: #6B7280;

			[data-theme=dark] & {
				color: #9CA3AF;
			}
		}

		.dialog-btn {
			width: 100%;
			padding: 12px 18px;
			background-color: #8A1739;
			border-radius: 8px;
			color: #fff;
			font-weight: 500;
		}
	}
}

/* Join Fatwatok Dialog Styles */
dialog.join-fatwatok {
	max-width: 518px;
	width: 100%;
	background-color: transparent;
	opacity: 0;
	transform: scale(0.9) translateY(20px);
	transition: opacity 0.3s ease, transform 0.3s ease, overlay 0.3s ease allow-discrete, display 0.3s ease allow-discrete;

	&[open] {
		opacity: 1;
		transform: scale(1) translateY(0);
	}

	@starting-style {
		&[open] {
			opacity: 0;
			transform: scale(0.9) translateY(20px);
		}
	}

	&::backdrop {
		backdrop-filter: blur(2px);
		background-color: rgba(0, 0, 0, 0);
		transition: background-color 0.3s ease, backdrop-filter 0.3s ease, overlay 0.3s ease allow-discrete, display 0.3s ease allow-discrete;
	}

	&[open]::backdrop {
		background-color: rgba(0, 0, 0, 0.5);
	}

	@starting-style {
		&[open]::backdrop {
			background-color: rgba(0, 0, 0, 0);
		}
	}

	@media (width < 768px) {
		margin: 0;
		bottom: 0;
		top: auto;
	}

	.dialog-main {
		padding: 20px;
		display: flex;
		align-items: center;
		flex-direction: column;
		gap: 16px;
		text-align: center;
		background-color: #fff;
		border-radius: 20px;

		[data-theme=dark] & {
			background-color: #000;
		}

		@media (width < 768px) {
			border-bottom-left-radius: 0;
			border-bottom-right-radius: 0;
		}

		.close-dialog {
			padding: 8px;
			border: 1px solid #E5E7EB;
			border-radius: 8px;
			background-color: #F9FAFB;
			margin-right: auto;
			margin-bottom: 8px;

			[data-theme=dark] & {
				background-color: #262626;
				border-color: #262626;

				svg path {
					stroke: #fff;
				}
			}
		}

		.dialog-svg {
			padding: 18px;
			background-color: #F9EBEF;
			border-radius: 50%;
		}

		.dialog-title {
			color: #111827;
			font-size: 20px;
			font-weight: 700;

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		.dialog-desc {
			color: #6B7280;

			[data-theme=dark] & {
				color: #9CA3AF;
			}
		}

		.points-list {
			text-align: right;
			width: 100%;
			padding: 16px;
			border: 1px solid #F3F4F6;
			border-radius: 12px;

			[data-theme=dark] & {
				border-color: #262626;
			}

			.points-list_item {
				display: flex;
				align-items: center;
				gap: 8px;
				font-size: 14px;
				font-weight: 500;
				color: #4B5563;

				[data-theme=dark] & {
					color: #E5E7EB;
				}

				&:not(first-child) {
					margin-top: 12px;
				}

				span {
					padding: 4.5px;
					background-color: #F9EBEF;
					border-radius: 50%;
				}
			}
		}

		.dialog-actions {
			display: flex;
			align-items: center;
			flex-wrap: wrap;
			gap: 20px 16px;
			width: 100%;

			.dialog-actions_main {
				flex: 0 0 calc(50% - 8px);
				padding: 12px 18px;
				background-color: #8A1739;
				border: 1px solid #8A1739;
				border-radius: 8px;
				color: #fff;
				font-weight: 500;
			}

			.dialog-actions_secondary {
				flex: 0 0 calc(50% - 8px);
				padding: 12px 18px;
				background-color: #fff;
				border: 1px solid #8A1739;
				border-radius: 8px;
				color: #8A1739;
				font-weight: 500;

				[data-theme=dark] & {
					color: #E5E7EB;
					border-color: #E5E7EB;
					background-color: transparent;
				}
			}

			.dialog-actions_later {
				flex: 0 0 100%;
				color: #9CA3AF;
				font-weight: 500;
				transition: color .3s;

				&:hover {
					color: #111827;

					[data-theme=dark] & {
						color: #E5E7EB;
					}
				}

			}
		}
	}
}

.categories-wrapper {
	background-color: #fff;
	padding: 20px;
	height: calc(100dvh - 74px);

	overflow-y: scroll;
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */

	&::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, Opera */
	}

	@media (width < 768px) {
		height: calc(100dvh - 56px);
	}

	[data-theme=dark] & {
		background-color: #171717;
	}

	.top-title {
		color: #8A1739;
		font-size: 18px;
		font-weight: 700;
		margin-bottom: 8px;
	}

	.top-desc {
		color: #6B7280;
		font-size: 14px;
		margin-bottom: 24px;

		[data-theme=dark] & {
			color: #E5E7EB;
		}
	}
}

.categories-acc_item {
	max-width: 872px;
	margin: 0 auto;
	padding: 16px;
	border: 1px solid #E5E7EB;
	border-radius: 10px;

	[data-theme=dark] & {
		border-color: #404040;
	}

	&:not(:first-child) {
		margin-top: 12px;
	}

	.item-head {
		display: flex;
		align-items: center;
		gap: 12px;

		.item-title {
			width: 100%;
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			color: #1F2937;
			font-size: 18px;
			font-weight: 700;

			[data-theme=dark] & {
				color: #E5E7EB;
			}
		}

		.item-head_btn {
			border-radius: 50%;
			padding: 7px;
			background-color: #F9EBEF;

			.toggle-minus {
				display: none;
			}
		}
	}

	&[open] {
		.item-head_btn {
			background-color: #F9FAFB;

			.toggle-minus {
				display: block;
			}

			.toggle-plus {
				display: none;
			}
		}
	}

	.item-details {
		padding-top: 24px;
		padding-bottom: 16px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;

		@media (width < 768px) {
			grid-template-columns: repeat(1, 1fr);
		}

		.item-details_item {
			display: flex;
			align-items: center;
			justify-content: space-between;
			background-color: #F9FAFB;
			border-radius: 8px;
			padding: 12px;
			color: #1F2937;
			font-weight: 500;

			[data-theme=dark] & {
				background-color: #000;
				color: #E5E7EB;
			}
		}
	}
}

.cards-wrapper .ramadan-logo {
	display: none;
}

.aside-nav_list .list-item.ramadan-brand {
	display: none;
}

body.ramadan {
	.bg-calligraphy {
		top: 78px;
		height: 40%;
		background-image: url('../images/ramadan-calligraphy.png');
		background-repeat: no-repeat;
		background-position: right top;
		opacity: 1;

		[data-theme=dark] & {
			background-image: url('../images/ramadan-calligraphy.png');
			opacity: 0.3;
		}

		&::before {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 0;
			background-image: url('../images/ramadan-calligraphy.png');
			background-repeat: no-repeat;
			background-size: auto 100%;
			background-position: left top;
		}
	}

	.fatwa-nav_list {
		flex-wrap: wrap;
	}

	.cards-wrapper .ramadan-logo {
		@media (width < 768px) {
			display: block;
			margin-bottom: 20px;

			img {
				height: 46px;
			}

			.dark {
				display: none;
			}

			[data-theme=dark] & {
				.dark {
					display: block;
					margin: 0 auto;
				}

				.light {
					display: none;
				}
			}
		}
	}

	.aside-nav_list .list-item.ramadan-brand {
		display: block;

		&:hover {
			background-color: transparent;
		}

		.dark {
			display: none;
		}

		[data-theme=dark] & {
			.dark {
				display: block;
			}

			.light {
				display: none;
			}
		}
	}

	/* @media (width < 768px) {
		.cards-wrapper,
		.container.search-page
		.container.privacy-page
		.saved-wrapper
		.categories-wrapper
		.container.profile {
			height: calc(100dvh - 121px);
		}
	} */
}

.iti.iti--allow-dropdown {
	width: 100%;
}

.iti__selected-dial-code {
	[data-theme=dark] & {
		color: #E5E7EB;
	}
}

.iti__country-name {
	[data-theme=dark] & {
		color: #E5E7EB;
	}
}

.iti__dropdown-content {
	[data-theme=dark] & {
		background-color: #171717;
	}
}

.iti__search-input {
	[data-theme=dark] & {
		background-color: #171717;
		color: #E5E7EB;
	}
}

/* Share Dialog */
.share-dialog {
	@media (width < 768px) {
		margin: 0;
		bottom: 0;
		top: auto;
		padding: 0;

		.dialog-main {
			border-bottom-left-radius: 0;
			border-bottom-right-radius: 0;
		}
	}

	.dialog-main {
		position: relative;
		padding: 32px 40px;

		@media (width < 768px) {
			padding: 24px 20px;
		}
	}

	.dialog-close {
		position: absolute;
		top: 16px;
		left: 16px;
		background: none;
		border: none;
		cursor: pointer;
		padding: 4px;
		border-radius: 50%;
		transition: background-color 0.2s;

		&:hover {
			background-color: #f3f4f6;
		}

		[data-theme=dark] & {
			svg path {
				stroke: #9CA3AF;
			}

			&:hover {
				background-color: #1f1f1f;
			}
		}
	}

	.dialog-title {
		margin-top: 8px;
		margin-bottom: 8px;
	}

	.share-buttons {
		display: flex;
		justify-content: center;
		gap: 24px;
		direction: rtl;

		@media (width < 768px) {
			gap: 16px;
		}
	}

	.share-btn {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 8px;
		background: none;
		border: none;
		cursor: pointer;
		text-decoration: none;
		color: #374151;
		font-size: 13px;
		font-family: inherit;
		padding: 8px;
		border-radius: 12px;
		transition: background-color 0.2s;

		&:hover {
			background-color: #f3f4f6;
		}

		[data-theme=dark] & {
			color: #D1D5DB;

			&:hover {
				background-color: #1f1f1f;
			}
		}

		svg {
			width: 40px;
			height: 40px;
			padding: 4px;
			border-radius: 50%;
			background-color: #f3f4f6;
			transition: transform 0.2s;

			[data-theme=dark] & {
				background-color: #262626;
			}
		}

		&:hover svg {
			transform: scale(1.1);
		}

		span {
			white-space: nowrap;
		}
	}
}