/* OMQ tactical security map skin */
.ap-worldmap{
	position:relative;
	padding:10px!important;
	overflow:hidden;
	border:1px solid rgba(208,166,95,.18)!important;
	border-radius:9px!important;
	background:
		radial-gradient(circle at 76% 22%,rgba(143,14,23,.10),transparent 28%),
		linear-gradient(180deg,#0a0d0f,#07090a)!important;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.025),
		0 18px 44px rgba(0,0,0,.20)
}
.ap-worldmap::before{
	content:"GLOBAL SECURITY MAP / OMQ";
	position:absolute;
	z-index:12;
	top:17px;
	inset-inline-end:18px;
	padding:5px 8px;
	border:1px solid rgba(208,166,95,.16);
	border-radius:4px;
	background:rgba(5,6,7,.70);
	color:rgba(208,166,95,.72);
	font:600 6px "IBM Plex Mono",monospace;
	letter-spacing:.12em;
	direction:ltr;
	pointer-events:none;
	backdrop-filter:blur(8px)
}
.ap-worldmap__canvas--embed{
	position:relative;
	height:355px;
	overflow:hidden;
	border:1px solid rgba(208,166,95,.18);
	border-radius:7px;
	background:#060809;
	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.018),
		inset 0 0 45px rgba(0,0,0,.45)
}
.ap-worldmap__canvas--embed::before{
	content:"";
	position:absolute;
	z-index:4;
	inset:0;
	pointer-events:none;
	background-image:
		linear-gradient(rgba(208,166,95,.035) 1px,transparent 1px),
		linear-gradient(90deg,rgba(208,166,95,.035) 1px,transparent 1px);
	background-size:38px 38px;
	mix-blend-mode:screen;
	opacity:.5;
	mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.25))
}
.ap-worldmap__canvas--embed::after{
	content:"";
	position:absolute;
	z-index:5;
	inset:0;
	pointer-events:none;
	background:
		radial-gradient(circle at 62% 45%,transparent 0 24%,rgba(143,14,23,.055) 43%,transparent 65%),
		linear-gradient(180deg,rgba(5,6,7,.08),transparent 30%,transparent 72%,rgba(5,6,7,.22)),
		linear-gradient(90deg,rgba(5,6,7,.16),transparent 18%,transparent 82%,rgba(5,6,7,.16))
}
.ap-worldmap__canvas--embed iframe{
	position:relative;
	z-index:1;
	display:block;
	width:100%;
	height:100%;
	border:0;
	background:#060809;
	filter:
		invert(.94)
		hue-rotate(180deg)
		grayscale(.72)
		saturate(.48)
		brightness(.63)
		contrast(1.34);
	transform:scale(1.012);
	transform-origin:center
}
.ap-worldmap__toolbar{
	z-index:15!important;
	left:17px!important;
	top:17px!important;
	display:flex!important;
	gap:6px!important;
	direction:ltr!important
}
.ap-worldmap__toolbar button{
	width:34px!important;
	height:30px!important;
	border:1px solid rgba(208,166,95,.22)!important;
	border-radius:7px!important;
	background:linear-gradient(180deg,rgba(19,23,25,.94),rgba(8,10,12,.94))!important;
	color:#c7b690!important;
	font:700 8px "IBM Plex Mono",monospace!important;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.035),
		0 8px 20px rgba(0,0,0,.30)!important;
	backdrop-filter:blur(8px);
	transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease
}
.ap-worldmap__toolbar button:hover{
	color:#fff!important;
	border-color:rgba(208,166,95,.52)!important;
	background:linear-gradient(180deg,rgba(111,13,26,.55),rgba(38,8,13,.82))!important;
	transform:translateY(-1px)
}
.ap-map-info{
	position:absolute;
	z-index:14;
	inset-inline-end:20px;
	bottom:54px;
	width:205px;
	min-height:72px;
	margin:0;
	padding:10px 11px;
	border:1px solid rgba(208,166,95,.23);
	border-radius:8px;
	display:grid;
	grid-template-columns:1fr auto;
	grid-template-areas:"name score" "status score";
	align-items:center;
	background:
		linear-gradient(135deg,rgba(111,13,26,.12),transparent 55%),
		rgba(6,8,9,.86);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.025),
		0 16px 38px rgba(0,0,0,.32);
	backdrop-filter:blur(13px) saturate(125%)
}
.ap-map-info>div{grid-area:name;display:flex;align-items:center;gap:8px}
.ap-map-info>div span{font-size:18px}
.ap-map-info>div strong{font:700 12px "Alexandria",sans-serif;color:#ece8df}
.ap-map-info p{
	grid-area:score;
	margin:0;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:1px;
	color:#767c7b;
	font-size:6px
}
.ap-map-info p b{
	font:700 21px "IBM Plex Mono",monospace;
	color:var(--gold);
	text-shadow:0 0 15px rgba(208,166,95,.18)
}
.ap-map-info small{
	grid-area:status;
	color:#8d928f;
	font-size:7px
}
.ap-map-legend{
	min-height:38px!important;
	height:auto!important;
	display:flex!important;
	align-items:center!important;
	gap:13px!important;
	padding:7px 3px 0!important;
	border-top:0!important
}
.ap-map-legend span{
	font-size:7px!important;
	color:#777d7b
}
.ap-map-legend span::before{
	width:7px!important;
	height:7px!important;
	box-shadow:0 0 8px currentColor
}
.ap-map-legend small{
	margin-inline-start:auto;
	color:#4d5353;
	font:500 6px "IBM Plex Mono",monospace;
	direction:ltr
}

/* Light mode: still premium, not raw OSM */
html[data-omq-theme="light"] .ap-worldmap{
	background:
		radial-gradient(circle at 76% 22%,rgba(143,14,23,.04),transparent 28%),
		linear-gradient(180deg,#ece6dc,#ded7cc)!important;
	box-shadow:0 16px 36px rgba(67,57,43,.10)
}
html[data-omq-theme="light"] .ap-worldmap::before{
	background:rgba(239,235,227,.82);
	color:#7e6137
}
html[data-omq-theme="light"] .ap-worldmap__canvas--embed{
	background:#d9d2c8;
	border-color:rgba(128,94,45,.20)
}
html[data-omq-theme="light"] .ap-worldmap__canvas--embed iframe{
	filter:grayscale(.2) saturate(.72) brightness(.96) contrast(1.04)
}
html[data-omq-theme="light"] .ap-worldmap__canvas--embed::before{
	background-image:
		linear-gradient(rgba(128,94,45,.045) 1px,transparent 1px),
		linear-gradient(90deg,rgba(128,94,45,.045) 1px,transparent 1px)
}
html[data-omq-theme="light"] .ap-map-info{
	background:
		linear-gradient(135deg,rgba(143,14,23,.06),transparent 55%),
		rgba(239,235,227,.91);
	box-shadow:0 14px 30px rgba(61,52,39,.12)
}
html[data-omq-theme="light"] .ap-map-info>div strong{color:#1c1d1b}
html[data-omq-theme="light"] .ap-map-info small{color:#65625c}

/* Existing approved responsive layout */
@media (max-width:1100px){
	.fc-hero__copy{width:min(520px,48%);inset-inline-end:30px}
	.fc-featurecards__grid{grid-template-columns:repeat(3,1fr)}
	.fc-bottom__grid{grid-template-columns:1fr 1fr}
}

@media (max-width:720px){
	.fc-hero{padding-top:5px}
	.fc-hero>.ap-shell{width:100%}
	.fc-hero__stage{min-height:540px;border-radius:0;border-inline:0}
	.fc-hero__shade{background:linear-gradient(to top,rgba(5,6,7,.95),rgba(5,6,7,.28) 62%,transparent)}
	.fc-hero__copy{top:auto;bottom:82px;inset-inline:18px;width:auto}
	.fc-hero__copy h1{font-size:31px}
	.fc-hero__copy h2{font-size:14px}
	.fc-hero__copy p{font-size:10px}
	.fc-hero__pager{left:18px;bottom:18px}
	.fc-featurecards__grid{
		display:grid;grid-auto-flow:column;grid-auto-columns:84%;grid-template-columns:unset;
		overflow-x:auto;scrollbar-width:none;margin-inline-end:-8px
	}
	.fc-featurecards__grid::-webkit-scrollbar{display:none}
	.fc-bottom__grid{
		display:grid;grid-auto-flow:column;grid-auto-columns:88%;grid-template-columns:unset;
		overflow-x:auto;scrollbar-width:none;margin-inline-end:-8px
	}
	.fc-bottom__grid::-webkit-scrollbar{display:none}
	.ap-worldmap{padding:7px!important}
	.ap-worldmap::before{top:12px;inset-inline-end:12px;font-size:5px;padding:4px 6px}
	.ap-worldmap__toolbar{left:12px!important;top:12px!important}
	.ap-worldmap__canvas--embed{height:340px}
	.ap-map-info{
		inset-inline:11px;
		width:auto;
		bottom:55px
	}
	.ap-map-legend{flex-wrap:wrap!important;padding-top:8px!important}
	.ap-map-legend small{width:100%;margin-inline-start:0}
}
