.port-privacy[hidden],
.port-privacy-tab[hidden],
.port-privacy__settings[hidden],
.port-privacy__save[hidden] {
	display: none !important;
}

.port-privacy,
.port-privacy * {
	box-sizing: border-box;
}

.port-privacy {
	position: fixed;
	z-index: 999999;
	left: 50%;
	bottom: 18px;
	width: min(680px, calc(100vw - 28px));
	transform: translateX(-50%);
	border: 1px solid rgba(218, 154, 84, .42);
	border-top-color: #d99a55;
	border-radius: 10px 10px 4px 4px;
	background: linear-gradient(105deg, rgba(9, 13, 14, .95), rgba(17, 21, 21, .92));
	box-shadow: 0 16px 48px rgba(0, 0, 0, .42), inset 0 1px rgba(255, 255, 255, .04);
	backdrop-filter: blur(18px) saturate(110%);
	-webkit-backdrop-filter: blur(18px) saturate(110%);
	padding: 15px 16px 14px 18px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 14px 20px;
	color: #f0ede6;
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.4;
	transition: transform .55s cubic-bezier(.22, 1, .36, 1), opacity .35s ease;
}

.port-privacy.is-leaving {
	transform: translate(-50%, calc(100% + 42px));
	opacity: 0;
	pointer-events: none;
}

.port-privacy__notice {
	display: flex;
	gap: 13px;
	align-items: flex-start;
	min-width: 0;
}

.port-privacy__mark {
	color: #d99a55;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1;
}

.port-privacy__notice strong,
.port-privacy__toggle strong {
	display: block;
	margin: 0 0 4px;
	color: #e7b270;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .22em;
	line-height: 1.3;
	text-transform: uppercase;
}

.port-privacy__notice p {
	max-width: 420px;
	margin: 0;
	color: rgba(240, 237, 230, .7);
	font-size: 11px;
	line-height: 1.55;
}

.port-privacy__notice a {
	color: #f0ede6;
	text-decoration: underline;
	text-decoration-color: rgba(217, 154, 85, .7);
	text-underline-offset: 3px;
}

.port-privacy__notice a:hover,
.port-privacy__notice a:focus-visible {
	color: #e7b270;
	outline: none;
}

.port-privacy__actions {
	display: flex;
	align-items: center;
	gap: 7px;
}

.port-privacy__button,
.port-privacy__close,
.port-privacy-tab {
	-webkit-appearance: none;
	appearance: none;
	font: inherit;
	cursor: pointer;
}

.port-privacy__button {
	min-height: 34px;
	border: 1px solid rgba(240, 237, 230, .18);
	border-radius: 3px;
	background: transparent;
	color: rgba(240, 237, 230, .8);
	padding: 0 12px;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: .12em;
	line-height: 1;
	text-transform: uppercase;
}

.port-privacy__button:hover,
.port-privacy__button:focus-visible {
	border-color: #d99a55;
	color: #fff;
	outline: none;
}

.port-privacy__button--primary {
	border-color: #d99a55;
	background: #d99a55;
	color: #0b0e0f;
	font-weight: 700;
}

.port-privacy__button--primary:hover,
.port-privacy__button--primary:focus-visible {
	background: #e7ad6a;
	color: #070a0b;
}

.port-privacy__close {
	position: absolute;
	top: -12px;
	right: 10px;
	width: 25px;
	height: 25px;
	border: 1px solid rgba(217, 154, 85, .45);
	border-radius: 50%;
	background: #0a0d0e;
	color: rgba(240, 237, 230, .76);
	font-size: 17px;
	line-height: 21px;
	text-align: center;
}

.port-privacy__close:hover,
.port-privacy__close:focus-visible {
	border-color: #e7b270;
	color: #fff;
	outline: none;
}

.port-privacy__settings {
	grid-column: 1 / -1;
	padding-top: 12px;
	border-top: 1px solid rgba(240, 237, 230, .1);
}

.port-privacy__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	cursor: pointer;
}

.port-privacy__toggle small {
	display: block;
	color: rgba(240, 237, 230, .62);
	font-size: 10px;
	line-height: 1.45;
}

.port-privacy__toggle input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.port-privacy__switch {
	position: relative;
	width: 39px;
	height: 21px;
	flex: 0 0 auto;
	border: 1px solid rgba(240, 237, 230, .24);
	border-radius: 999px;
	background: rgba(255, 255, 255, .06);
}

.port-privacy__switch::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: rgba(240, 237, 230, .72);
	transition: transform .2s ease, background .2s ease;
}

.port-privacy__toggle input:checked + .port-privacy__switch {
	border-color: #d99a55;
	background: rgba(217, 154, 85, .18);
}

.port-privacy__toggle input:checked + .port-privacy__switch::after {
	transform: translateX(18px);
	background: #e7b270;
}

.port-privacy__toggle input:focus-visible + .port-privacy__switch {
	outline: 2px solid #e7b270;
	outline-offset: 3px;
}

.port-privacy-tab {
	position: fixed;
	z-index: 999998;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	border: 1px solid rgba(217, 154, 85, .4);
	border-bottom: 0;
	border-radius: 5px 5px 0 0;
	background: rgba(9, 13, 14, .94);
	color: #d9a061;
	box-shadow: 0 -8px 24px rgba(0, 0, 0, .2);
	padding: 8px 18px 7px;
	font-size: 8px;
	font-weight: 600;
	letter-spacing: .24em;
	line-height: 1;
	text-transform: uppercase;
}

.port-privacy-tab:hover,
.port-privacy-tab:focus-visible {
	border-color: #e7b270;
	color: #f0ede6;
	outline: none;
}

@media (max-width: 650px) {
	.port-privacy {
		bottom: 10px;
		grid-template-columns: 1fr;
		padding: 16px;
	}

	.port-privacy__actions {
		justify-content: stretch;
	}

	.port-privacy__button {
		flex: 1;
		padding: 0 8px;
	}

	.port-privacy__notice p {
		font-size: 10.5px;
	}
}

@media (max-width: 390px) {
	.port-privacy__actions {
		flex-wrap: wrap;
	}

	.port-privacy__button--primary {
		flex-basis: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.port-privacy,
	.port-privacy__switch::after {
		transition: none;
	}
}

