:root {
	--flap-dark: #0b1f3a;
	--flap-green: #90d23f;
	--flap-line: #dfe7ef;
}

.flap-overlay {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding: 18px;
	background: rgba(4, 15, 29, .66);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .28s ease, visibility .28s ease;
}

.flap-overlay.is-visible {
	opacity: 1;
	visibility: visible;
}

.flap-sheet {
	position: relative;
	width: min(520px, 100%);
	max-height: calc(100vh - 36px);
	overflow: auto;
	padding: 30px;
	border: 1px solid rgba(11, 31, 58, .09);
	border-radius: 26px;
	background: linear-gradient(150deg, #fff 0%, #f6f9fc 100%);
	box-shadow: 0 30px 90px rgba(3, 16, 31, .35);
	color: #18263a;
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	transform: translateY(36px) scale(.98);
	transition: transform .32s cubic-bezier(.2, .8, .2, 1);
}

.flap-overlay.is-visible .flap-sheet { transform: translateY(0) scale(1); }

.flap-accent {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 5px;
	border-radius: 26px 26px 0 0;
	background: linear-gradient(90deg, var(--flap-green), #b5eb72);
}

.flap-close {
	position: absolute;
	top: 14px;
	right: 16px;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background: #edf2f6;
	color: #53657b;
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
}

.flap-brand-row {
	display: flex;
	align-items: center;
	gap: 16px;
	padding-right: 36px;
}

.flap-brand-row img,
.flap-ios-icon img {
	display: block;
	width: 72px;
	height: 72px;
	border-radius: 20px;
	box-shadow: 0 12px 26px rgba(11, 31, 58, .2);
}

.flap-brand-row > div {
	display: flex;
	flex-direction: column;
}

.flap-brand-row span {
	margin-bottom: 4px;
	color: #5d8b27;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .14em;
}

.flap-brand-row strong {
	color: var(--flap-dark);
	font-size: 24px;
	font-style: normal;
	letter-spacing: .04em;
}

.flap-brand-row em {
	color: #75b729;
	font-style: normal;
}

.flap-sheet h2 {
	margin: 25px 0 10px;
	color: var(--flap-dark);
	font-size: clamp(25px, 7vw, 32px);
	line-height: 1.14;
}

.flap-copy {
	margin: 0;
	color: #5e7085;
	font-size: 15px;
	line-height: 1.65;
}

.flap-benefits {
	display: grid;
	gap: 10px;
	margin: 22px 0;
	padding: 17px;
	border: 1px solid var(--flap-line);
	border-radius: 14px;
	background: #fff;
}

.flap-benefits span {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #3d5066;
	font-size: 13px;
	font-weight: 700;
}

.flap-benefits b {
	display: grid;
	place-items: center;
	flex: 0 0 23px;
	width: 23px;
	height: 23px;
	border-radius: 50%;
	background: var(--flap-green);
	color: var(--flap-dark);
	font-size: 12px;
}

.flap-actions {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 10px;
}

.flap-install,
.flap-later {
	min-height: 50px;
	padding: 13px 20px;
	border: 0;
	border-radius: 12px;
	font: inherit;
	font-size: 14px;
	font-weight: 850;
	cursor: pointer;
}

.flap-install {
	background: var(--flap-dark);
	box-shadow: 0 12px 25px rgba(11, 31, 58, .2);
	color: #fff;
}

.flap-later {
	background: #e9eef3;
	color: #52657a;
}

.flap-ios-icon {
	display: flex;
	justify-content: center;
	margin-top: 7px;
}

.flap-ios-steps {
	display: grid;
	gap: 13px;
	margin: 24px 0;
	padding: 0;
	list-style: none;
}

.flap-ios-steps li {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 12px;
	padding: 15px;
	border: 1px solid var(--flap-line);
	border-radius: 13px;
	background: #fff;
	color: #40536a;
}

.flap-ios-steps li > b {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 10px;
	background: var(--flap-green);
	color: var(--flap-dark);
}

.flap-share {
	display: inline-grid;
	place-items: center;
	width: 23px;
	height: 23px;
	margin-left: 6px;
	border: 1px solid #9badbf;
	border-radius: 6px;
	color: #246bb3;
	font-style: normal;
}

.flap-ios-done { width: 100%; }

.flap-toast {
	position: fixed;
	left: 50%;
	bottom: 28px;
	z-index: 2147483001;
	padding: 14px 20px;
	border-radius: 12px;
	background: var(--flap-dark);
	box-shadow: 0 15px 40px rgba(0, 0, 0, .25);
	color: #fff;
	font: 700 13px/1.4 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	opacity: 0;
	transform: translate(-50%, 15px);
	transition: .25s ease;
}

.flap-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

@media (min-width: 720px) {
	.flap-overlay { align-items: center; }
}

@media (max-width: 420px) {
	.flap-overlay { padding: 0; }
	.flap-sheet {
		width: 100%;
		max-height: 94vh;
		padding: 26px 22px calc(22px + env(safe-area-inset-bottom));
		border-radius: 25px 25px 0 0;
	}
	.flap-actions { grid-template-columns: 1fr; }
	.flap-brand-row img { width: 64px; height: 64px; }
}

@media (prefers-reduced-motion: reduce) {
	.flap-overlay,
	.flap-sheet,
	.flap-toast { transition: none; }
}
.flap-push-card{position:relative;overflow:hidden;padding:clamp(24px,4vw,42px);border:1px solid #dce5eb;border-radius:22px;background:linear-gradient(145deg,#fff,#f5f8fa);box-shadow:0 18px 50px rgba(11,31,58,.08)}
.flap-push-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#90d23f}
.flap-push-card h2{margin:8px 0 12px;color:#0b1f3a;font-size:clamp(24px,3vw,34px)}
.flap-push-card>p{max-width:760px;color:#546577;line-height:1.7}
.flap-push-kicker{color:#62a819;font-size:12px;font-weight:900;letter-spacing:.16em}
.flap-push-state{display:inline-flex;align-items:center;gap:8px;margin:16px 0;padding:9px 13px;border-radius:999px;background:#eef2f5;color:#536271;font-size:13px;font-weight:800}
.flap-push-state:before{content:"";width:8px;height:8px;border-radius:50%;background:#8a98a5}
.flap-push-state.is-active{background:#edf8e2;color:#376d0d}.flap-push-state.is-active:before{background:#72bd28;box-shadow:0 0 0 4px rgba(114,189,40,.16)}
.flap-push-button{display:block;margin:2px 0 24px;padding:13px 20px;border:0;border-radius:11px;background:#0b1f3a;color:#fff;font:inherit;font-weight:850;cursor:pointer;transition:.2s}
.flap-push-button:hover{background:#143b63;transform:translateY(-1px)}.flap-push-button:disabled{cursor:not-allowed;opacity:.55;transform:none}
.flap-push-preferences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0;padding:20px;border:1px solid #e0e7ec;border-radius:15px}
.flap-push-preferences legend{padding:0 8px;color:#0b1f3a;font-weight:850}
.flap-push-preferences label{display:flex;align-items:center;gap:10px;color:#25384a;cursor:pointer}
.flap-push-preferences input{width:18px;height:18px;accent-color:#76bc2c}
.flap-push-help{min-height:24px;margin:15px 0 0!important;color:#536d31!important;font-weight:700}
@media(max-width:620px){.flap-push-preferences{grid-template-columns:1fr}}
