@CHARSET "UTF-8";

/* In-game UI fixes (quest popup, logo, level badges, resource text) */

/*
 * Quest modal: keep Travian centering (#ce right:50% + margin-right:-256px)
 * and only add top clearance under the grey drag/close bar.
 * Do NOT change width/box-sizing in ways that shift the popup over the sidebar.
 */
div#ce {
	right: 50% !important;
	left: auto !important;
	top: 118px !important;
	z-index: 2001 !important;
	transform: none !important;
}

div.popup3.quest {
	position: absolute !important;
	width: 513px !important;
	max-width: calc(100vw - 24px);
	margin-right: -256px !important;
	margin-left: 0 !important;
	left: auto !important;
	right: auto !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

div.popup3.quest div.questTop,
div.popup3.quest div.questBottom {
	width: 513px !important;
	max-width: 100%;
	box-sizing: border-box !important;
}

div.popup3.quest div.questMiddle {
	/* preserve horizontal padding from compact1; only raise top under #drag */
	width: 473px !important;
	max-width: 100%;
	padding: 36px 20px 12px 20px !important;
	box-sizing: content-box !important;
	min-height: 350px;
	overflow: visible !important;
}

div.popup3.quest #qstd > h1,
div.popup3.quest #qstd > h2,
div.popup3.quest #qstd > h3,
div.popup3.quest #qstd > h4,
div.quest div.questMiddle div#qstd h1,
div.quest div.questMiddle div#qstd h2,
div.quest div.questMiddle div#qstd h3,
div.quest div.questMiddle div#qstd h4 {
	margin-top: 4px !important;
	margin-bottom: 16px !important;
	padding-top: 0 !important;
	line-height: 1.45 !important;
	clear: both;
	position: relative;
	z-index: 1;
	font-family: "Vazirmatn", Tahoma, sans-serif;
}

div.popup3.quest div#drag {
	right: 7px !important;
	top: 7px !important;
	height: 18px !important;
	width: 499px !important;
	max-width: calc(100% - 14px);
	z-index: 2;
}

div.popup3.quest a.close {
	z-index: 3;
}

div.quest div.questMiddle div#qstbg {
	max-width: 100%;
}

/* Quest 6 / 20 ? rank entry field + complete button (match forest game buttons / auth inputs) */
div.popup3.quest #qstd input#qst_val[type="text"],
div.quest #qstd input#qst_val[type="text"],
#qstd input#qst_val.text[type="text"] {
	display: inline-block !important;
	width: 88px !important;
	max-width: 40% !important;
	height: 32px !important;
	margin: 0 8px 10px 0 !important;
	padding: 0 10px !important;
	border: 1px solid rgba(45, 74, 50, 0.28) !important;
	border-radius: 8px !important;
	background: #fff !important;
	color: #1a2418 !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 30px !important;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	box-sizing: border-box !important;
	vertical-align: middle;
	transition: border-color .15s ease, box-shadow .15s ease;
}

div.popup3.quest #qstd input#qst_val[type="text"]:focus,
div.quest #qstd input#qst_val[type="text"]:focus,
#qstd input#qst_val.text[type="text"]:focus {
	outline: none !important;
	border-color: #2f6f3e !important;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18) !important;
}

div.popup3.quest #qstd button[type="button"]:not(.icon),
div.quest #qstd button[type="button"]:not(.icon),
#qstd button[type="button"]:not(.icon) {
	appearance: none;
	-webkit-appearance: none;
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 0 10px !important;
	cursor: pointer;
	vertical-align: middle;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

div.popup3.quest #qstd button[type="button"]:not(.icon) .button-container,
div.quest #qstd button[type="button"]:not(.icon) .button-container,
#qstd button[type="button"]:not(.icon) .button-container {
	background: none !important;
	background-image: none !important;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}

div.popup3.quest #qstd button[type="button"]:not(.icon) .button-position,
div.popup3.quest #qstd button[type="button"]:not(.icon) .btl,
div.popup3.quest #qstd button[type="button"]:not(.icon) .btr,
div.popup3.quest #qstd button[type="button"]:not(.icon) .btc,
div.popup3.quest #qstd button[type="button"]:not(.icon) .bml,
div.popup3.quest #qstd button[type="button"]:not(.icon) .bmr,
div.popup3.quest #qstd button[type="button"]:not(.icon) .bmc,
div.popup3.quest #qstd button[type="button"]:not(.icon) .bbl,
div.popup3.quest #qstd button[type="button"]:not(.icon) .bbr,
div.popup3.quest #qstd button[type="button"]:not(.icon) .bbc,
#qstd button[type="button"]:not(.icon) .button-position,
#qstd button[type="button"]:not(.icon) .btl,
#qstd button[type="button"]:not(.icon) .btr,
#qstd button[type="button"]:not(.icon) .btc,
#qstd button[type="button"]:not(.icon) .bml,
#qstd button[type="button"]:not(.icon) .bmr,
#qstd button[type="button"]:not(.icon) .bmc,
#qstd button[type="button"]:not(.icon) .bbl,
#qstd button[type="button"]:not(.icon) .bbr,
#qstd button[type="button"]:not(.icon) .bbc {
	display: none !important;
	background: none !important;
}

div.popup3.quest #qstd button[type="button"]:not(.icon) .button-contents,
div.quest #qstd button[type="button"]:not(.icon) .button-contents,
#qstd button[type="button"]:not(.icon) .button-contents {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 0 !important;
	min-height: 32px !important;
	height: auto !important;
	width: auto !important;
	padding: 6px 14px !important;
	border-radius: 8px !important;
	border: 0 !important;
	background: linear-gradient(180deg, #3f6b45, #1e3224) !important;
	color: #fff !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	box-shadow: 0 1px 3px rgba(30, 50, 36, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.12);
	text-shadow: none !important;
	transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
	white-space: nowrap;
	box-sizing: border-box !important;
}

div.popup3.quest #qstd button[type="button"]:not(.icon):hover .button-contents,
#qstd button[type="button"]:not(.icon):hover .button-contents {
	filter: brightness(1.05);
	transform: translateY(-1px);
	box-shadow: 0 2px 5px rgba(30, 50, 36, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

div.popup3.quest #qstd button[type="button"]:not(.icon):active .button-contents,
#qstd button[type="button"]:not(.icon):active .button-contents {
	transform: translateY(1px);
	filter: brightness(0.96);
}

/* Replace T4DL.IR baked into logo sprites ? keep float/block so header layout stays intact */
#logo,
a#logo {
	position: relative !important;
	overflow: hidden !important;
	text-indent: 0 !important;
	background-image: none !important;
	background-color: transparent !important;
	display: block !important;
	float: right;
	width: 124px !important;
	height: 43px !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	line-height: 43px !important;
	color: #1a2418 !important;
	text-decoration: none !important;
	white-space: nowrap;
}

body.login #logo,
body.signup #logo,
body.logout #logo,
body.support #logo,
body.activate #logo {
	float: none;
	width: 238px !important;
	height: 86px !important;
	margin: 15px 195px 0 0 !important;
	line-height: 86px !important;
	font-size: 28px !important;
	color: #f7f3ea !important;
	text-shadow: 0 1px 2px rgba(0,0,0,0.45);
	text-align: center;
}

#logo::after,
a#logo::after {
	content: "???????";
	display: block;
	width: 100%;
	height: 100%;
	text-align: inherit;
}

/* Keep resource / level numbers visible after layout + font changes */
#res li p .value,
#stockBar .value,
div.village1 #village_map div.level,
div.village1 #village_map .level {
	color: #252525 !important;
	opacity: 1 !important;
	visibility: visible !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-align: center;
	box-sizing: border-box;
}

/* Resource bar: white strip holds all 5 items (incl. crop consumption) RTL */
#res {
	width: auto !important;
	min-width: 520px;
	max-width: min(720px, calc(100vw - 210px));
	box-sizing: border-box;
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 4px 8px;
	direction: rtl;
	padding: 6px 12px 8px !important;
	margin: 0 !important;
	list-style: none !important;
	background: #fff !important;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(20, 32, 18, 0.14);
	overflow: hidden;
}
#res li {
	float: none !important;
	width: auto !important;
	flex: 1 1 0;
	min-width: 0;
	max-width: 132px;
	box-sizing: border-box;
	position: relative;
	padding: 0 !important;
}
#res .r1,
#res .r2,
#res .r3,
#res .r4,
#res .r5 {
	padding: 0 !important;
}
#res li p {
	display: flex !important;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 4px;
	direction: rtl;
	position: relative !important;
	min-height: 16px;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	width: 100%;
	box-sizing: border-box;
}
#res li p img {
	flex: 0 0 18px;
	width: 18px;
	height: 16px;
	margin: 0 !important;
	position: relative !important;
	float: none !important;
	z-index: 1;
}
#res li p .value {
	position: static !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	z-index: 2;
	flex: 1 1 auto;
	min-width: 0;
	max-width: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap !important;
	text-align: right !important;
	font-size: 10px !important;
	letter-spacing: -0.15px;
	line-height: 16px !important;
}
#res li p .value.long {
	font-size: 9px !important;
	letter-spacing: -0.3px;
}
#res li p .value .rf {
	display: none !important;
}
#res li p .value .rs {
	display: inline !important;
}
#res li .bar-bg {
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box;
	margin-top: 4px;
}

div.village1 #village_map div.level {
	position: absolute;
	z-index: 21;
	width: 24px;
	height: 19px;
	overflow: visible !important;
}

#production td.res,
#production td.num,
#production th,
#side_info,
#side_info a,
#side_info .boxes-contents {
	color: #252525 !important;
	opacity: 1 !important;
	visibility: visible !important;
	font-family: "Vazirmatn", Tahoma, sans-serif;
}

#building_contract,
.buildingList,
div.buildDuration,
#content .buildingStatus {
	color: #252525 !important;
}

/* Ensure in-game build buttons stay visible (auth button chrome must not leak) */
body.build button.build,
body.village2 button.build,
#build button.build,
div#build .contractLink button.build {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/*
 * Village1 ???????? ?????? (#troops): unit sprites must stay fully visible.
 * Causes of ????? ????: (1) travian_mobile img{max-width:100%} shrinking 16?16
 * sprites in narrow .ico cells; (2) box chrome (.boxes-mc) painting over contents;
 * (3) mobile #content table{display:block} collapsing icon/count columns.
 */
div.village1 #map_details .boxes.units,
div.village1 div.boxes.units {
	overflow: visible !important;
}

div.village1 #map_details .boxes.units .boxes-tl,
div.village1 #map_details .boxes.units .boxes-tr,
div.village1 #map_details .boxes.units .boxes-tc,
div.village1 #map_details .boxes.units .boxes-ml,
div.village1 #map_details .boxes.units .boxes-mr,
div.village1 #map_details .boxes.units .boxes-mc,
div.village1 #map_details .boxes.units .boxes-bl,
div.village1 #map_details .boxes.units .boxes-br,
div.village1 #map_details .boxes.units .boxes-bc,
div.village1 div.boxes.units .boxes-tl,
div.village1 div.boxes.units .boxes-tr,
div.village1 div.boxes.units .boxes-tc,
div.village1 div.boxes.units .boxes-ml,
div.village1 div.boxes.units .boxes-mr,
div.village1 div.boxes.units .boxes-mc,
div.village1 div.boxes.units .boxes-bl,
div.village1 div.boxes.units .boxes-br,
div.village1 div.boxes.units .boxes-bc {
	z-index: 0;
}

div.village1 #map_details .boxes.units .boxes-contents,
div.village1 div.boxes.units .boxes-contents {
	position: relative;
	z-index: 2;
	overflow: visible !important;
	/* Extra inset on the icon side (right in RTL) so sprites clear .boxes-mr chrome */
	padding: 11px 16px 11px 11px !important;
}

div.village1 table#troops,
#content.village1 table#troops {
	display: table !important;
	width: 100%;
	table-layout: auto;
	border-collapse: separate;
	border-spacing: 0;
	line-height: 20px !important;
	overflow: visible !important;
	white-space: normal;
	position: relative;
	z-index: 2;
}

div.village1 table#troops tbody,
#content.village1 table#troops tbody {
	display: table-row-group !important;
}

div.village1 table#troops tr,
#content.village1 table#troops tr {
	display: table-row !important;
	height: auto !important;
	min-height: 18px;
	overflow: visible !important;
}

div.village1 table#troops th,
div.village1 table#troops td,
#content.village1 table#troops th,
#content.village1 table#troops td {
	display: table-cell !important;
	overflow: visible !important;
	vertical-align: middle !important;
	background: none;
	line-height: 20px !important;
	height: auto !important;
	max-height: none !important;
}

div.village1 table#troops td.ico,
#content.village1 table#troops td.ico {
	width: 20px !important;
	min-width: 20px !important;
	max-width: none !important;
	/* RTL: padding-right clears the rounded box edge / border sprite */
	padding: 2px 6px 2px 4px !important;
	position: relative;
	z-index: 3;
	overflow: visible !important;
	white-space: nowrap;
}

div.village1 table#troops td.ico a,
#content.village1 table#troops td.ico a {
	display: inline-block !important;
	position: relative;
	z-index: 3;
	/* never line-height:0 ? that clips 16px sprites vertically */
	line-height: 16px !important;
	height: 16px !important;
	width: 16px !important;
	overflow: visible !important;
	vertical-align: middle;
}

div.village1 table#troops img.unit,
#content.village1 table#troops img.unit,
div.village1 table#troops td.ico img,
#content.village1 table#troops td.ico img {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	z-index: 3;
	width: 16px !important;
	height: 16px !important;
	max-width: none !important;
	max-height: none !important;
	vertical-align: middle !important;
	overflow: visible !important;
	float: none !important;
	top: auto !important;
	bottom: auto !important;
	margin: 0 !important;
}

div.village1 table#troops td.num,
#content.village1 table#troops td.num {
	position: relative;
	z-index: 1;
	white-space: nowrap;
	overflow: visible !important;
	text-align: left;
	padding-left: 4px;
	padding-right: 4px;
}

div.village1 table#troops td.un,
#content.village1 table#troops td.un {
	width: 80%;
	white-space: nowrap;
	overflow: visible !important;
}

/* Crop balance (r5): same flex row as other resources ? stays inside white bar */
#res li.r5 {
	flex: 0.9 1 0;
	max-width: 120px;
}
#res li.r5 p {
	width: 100%;
}
#res li.r5 p .value {
	text-align: right !important;
}

/* Dorf2 building-level toggle (+) must stay clickable above the map hotspots.
   clickareas (z-index ~98 in compact.css) can otherwise intercept + clicks
   when #village_map lacks a positioning context. */
div.village2 div#village_map,
#content.village2 #village_map {
	position: relative !important;
	overflow: visible !important;
}
div.village2 img.clickareas,
#content.village2 img.clickareas {
	z-index: 90 !important;
	position: relative !important;
	pointer-events: auto !important;
	max-width: none !important;
}
div.village2 img#lswitch,
#content.village2 img#lswitch,
body.village2 #lswitch {
	position: absolute !important;
	top: 31px !important;
	right: 73px !important;
	left: auto !important;
	width: 28px !important;
	height: 28px !important;
	max-width: none !important;
	z-index: 700 !important;
	pointer-events: auto !important;
	cursor: pointer !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	display: block !important;
	background-color: transparent !important;
	background-repeat: no-repeat !important;
	background-size: auto !important;
}
div.village2 img#lswitch.lswitchPlus,
#content.village2 img#lswitch.lswitchPlus,
body.village2 #lswitch.lswitchPlus {
	background-image: url(../gpack/travian_Travian_4.0_41/img/a/plusBig.png) !important;
	background-position: 0 0 !important;
}
div.village2 img#lswitch.lswitchMinus,
#content.village2 img#lswitch.lswitchMinus,
body.village2 #lswitch.lswitchMinus {
	background-image: url(../gpack/travian_Travian_4.0_41/img/a/minusBig.png) !important;
	background-position: 0 0 !important;
}
div.village2 img#lswitch:hover,
#content.village2 img#lswitch:hover,
body.village2 #lswitch:hover {
	background-position: 0 -38px !important;
}
div.village2 div#village_map div#levels,
#content.village2 #village_map #levels {
	z-index: 97 !important;
	pointer-events: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
}
div.village2 div#village_map div#levels.on,
#content.village2 #village_map #levels.on {
	visibility: visible !important;
	opacity: 1 !important;
	z-index: 200 !important;
	display: block !important;
}
div.village2 div#village_map div#levels.on div,
#content.village2 #village_map #levels.on div {
	visibility: visible !important;
	opacity: 1 !important;
	color: #1a1a1a !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	line-height: 23px !important;
	text-align: center !important;
}

/* --------------------------------------------------------------------------
   Modern primary action buttons (match login forest/gold look)
   Skip sprite-only icon buttons (.icon, navigation, map tools, etc.)
   -------------------------------------------------------------------------- */
body:not(.login):not(.signup):not(.activate):not(.logout):not(.support) button.build,
body:not(.login):not(.signup) button[type="submit"]:not(.icon):not(.iconButton):not(.demolishBtn):not(.unitPkgBuyBtn),
body:not(.login) input[type="submit"]:not(.icon),
#build button.build,
div#build .contractLink button.build,
#content button.build,
#content button[type="submit"]:not(.icon):not(.demolishBtn):not(.unitPkgBuyBtn),
#content input[type="submit"],
body.help .helpInfoBlock a.helpHeadLine {
	appearance: none;
	-webkit-appearance: none;
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	cursor: pointer;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

body:not(.login):not(.signup) button.build .button-container,
body:not(.login) button[type="submit"]:not(.icon) .button-container,
#build button.build .button-container,
div#build .contractLink button.build .button-container {
	background: none !important;
	background-image: none !important;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}

body:not(.login):not(.signup) button.build .button-position,
body:not(.login):not(.signup) button.build .btl,
body:not(.login):not(.signup) button.build .btr,
body:not(.login):not(.signup) button.build .btc,
body:not(.login):not(.signup) button.build .bml,
body:not(.login):not(.signup) button.build .bmr,
body:not(.login):not(.signup) button.build .bmc,
body:not(.login):not(.signup) button.build .bbl,
body:not(.login):not(.signup) button.build .bbr,
body:not(.login):not(.signup) button.build .bbc,
body:not(.login) button[type="submit"]:not(.icon) .button-position,
body:not(.login) button[type="submit"]:not(.icon) .btl,
body:not(.login) button[type="submit"]:not(.icon) .btr,
body:not(.login) button[type="submit"]:not(.icon) .btc,
body:not(.login) button[type="submit"]:not(.icon) .bml,
body:not(.login) button[type="submit"]:not(.icon) .bmr,
body:not(.login) button[type="submit"]:not(.icon) .bmc,
body:not(.login) button[type="submit"]:not(.icon) .bbl,
body:not(.login) button[type="submit"]:not(.icon) .bbr,
body:not(.login) button[type="submit"]:not(.icon) .bbc,
#build button.build .button-position,
#build button.build .btl,
#build button.build .btr,
#build button.build .btc,
#build button.build .bml,
#build button.build .bmr,
#build button.build .bmc,
#build button.build .bbl,
#build button.build .bbr,
#build button.build .bbc {
	display: none !important;
	background: none !important;
}

body:not(.login):not(.signup) button.build .button-contents,
body:not(.login) button[type="submit"]:not(.icon) .button-contents,
#build button.build .button-contents,
div#build .contractLink button.build .button-contents,
body:not(.login) input[type="submit"]:not(.icon),
#content input[type="submit"] {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: none;
	height: auto !important;
	width: auto !important;
	padding: 2px 10px !important;
	border-radius: 5px !important;
	border: 0 !important;
	background: linear-gradient(180deg, #3f6b45, #1e3224) !important;
	color: #fff !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0;
	line-height: 15px !important;
	box-shadow: 0 1px 3px rgba(30, 50, 36, 0.2), inset 0 1px 0 rgba(255,255,255,0.12);
	text-shadow: none !important;
	transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
	white-space: nowrap;
}

body:not(.login):not(.signup) button.build:hover .button-contents,
body:not(.login) button[type="submit"]:not(.icon):hover .button-contents,
#build button.build:hover .button-contents,
body:not(.login) input[type="submit"]:not(.icon):hover,
#content input[type="submit"]:hover {
	filter: brightness(1.05);
	transform: translateY(-1px);
	box-shadow: 0 2px 5px rgba(30, 50, 36, 0.26), inset 0 1px 0 rgba(255,255,255,0.16);
}

body:not(.login):not(.signup) button.build:active .button-contents,
body:not(.login) input[type="submit"]:not(.icon):active,
#content input[type="submit"]:active {
	transform: translateY(1px);
	filter: brightness(0.96);
}

/* Do not restyle tiny icon / sprite controls ? selectors above exclude .icon */

/* Help page blocks */
#content.help .helpIntro {
	font-family: "Vazirmatn", Tahoma, sans-serif;
	color: #1a2418;
	line-height: 1.7;
	margin: 0 0 18px;
}
#content.help .helpInfoBlock {
	display: block;
	margin: 0 0 14px;
	padding: 14px 16px;
	border-radius: 12px;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.18);
	box-shadow: 0 8px 18px rgba(20, 32, 18, 0.08);
}
#content.help .helpInfoBlock a.helpHeadLine {
	display: inline-flex !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding: 2px 10px !important;
	margin: 0 0 8px !important;
	text-decoration: none !important;
	font-size: 13px !important;
	line-height: 15px !important;
	border-radius: 5px !important;
}
#content.help .helpInfoBlock a.helpText {
	display: block;
	font-family: "Vazirmatn", Tahoma, sans-serif;
	color: #2d4a32;
	line-height: 1.7;
	text-decoration: none;
	font-size: 13px;
}
#content.help .helpInfoBlock a.helpText:hover {
	color: #1e3224;
}

/* --------------------------------------------------------------------------
   Plus shop (plus.php) ? Vazirmatn + forest buttons (type=button activate/renew)
   -------------------------------------------------------------------------- */
body.plus,
body.plus #content,
body.plus #content.plus,
#content.plus {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

body.plus #content,
body.plus #content h1,
body.plus #content h4,
body.plus #content p,
body.plus #content td,
body.plus #content th,
body.plus #content span,
body.plus #content b,
body.plus #content a,
body.plus #content .boxes-contents,
body.plus #content .tabItem,
body.plus #content .titleInHeader,
body.plus table.plusFunctions,
body.plus table.plusFunctions td,
body.plus table.plusFunctions th,
body.plus table.plusFunctions .desc,
body.plus table.plusFunctions .run,
body.plus .contentNavi,
body.plus .goldBalance {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

body.plus #content button:not(.icon):not(.iconButton):not(.unitPkgBuyBtn),
body.plus #content button[type="button"]:not(.icon):not(.unitPkgBuyBtn),
body.plus #content button[type="submit"]:not(.icon):not(.unitPkgBuyBtn),
body.plus #content input[type="submit"],
#content.plus button:not(.icon):not(.iconButton):not(.unitPkgBuyBtn),
#content.plus button[type="button"]:not(.icon):not(.unitPkgBuyBtn),
#content.plus button[type="submit"]:not(.icon):not(.unitPkgBuyBtn),
#content.plus input[type="submit"] {
	appearance: none;
	-webkit-appearance: none;
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	cursor: pointer;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

body.plus #content button:not(.icon) .button-container,
#content.plus button:not(.icon) .button-container {
	background: none !important;
	background-image: none !important;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 auto !important;
}

body.plus #content button:not(.icon) .button-position,
body.plus #content button:not(.icon) .btl,
body.plus #content button:not(.icon) .btr,
body.plus #content button:not(.icon) .btc,
body.plus #content button:not(.icon) .bml,
body.plus #content button:not(.icon) .bmr,
body.plus #content button:not(.icon) .bmc,
body.plus #content button:not(.icon) .bbl,
body.plus #content button:not(.icon) .bbr,
body.plus #content button:not(.icon) .bbc,
#content.plus button:not(.icon) .button-position,
#content.plus button:not(.icon) .btl,
#content.plus button:not(.icon) .btr,
#content.plus button:not(.icon) .btc,
#content.plus button:not(.icon) .bml,
#content.plus button:not(.icon) .bmr,
#content.plus button:not(.icon) .bmc,
#content.plus button:not(.icon) .bbl,
#content.plus button:not(.icon) .bbr,
#content.plus button:not(.icon) .bbc {
	display: none !important;
	background: none !important;
}

body.plus #content button:not(.icon) .button-contents,
body.plus #content button[type="submit"]:not(.icon) .button-contents,
body.plus #content input[type="submit"],
#content.plus button:not(.icon) .button-contents,
#content.plus input[type="submit"] {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 0 !important;
	min-height: 28px !important;
	height: auto !important;
	width: auto !important;
	padding: 4px 12px !important;
	border-radius: 5px !important;
	border: 0 !important;
	background: linear-gradient(180deg, #3f6b45, #1e3224) !important;
	color: #fff !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	box-shadow: 0 1px 3px rgba(30, 50, 36, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.12);
	text-shadow: none !important;
	transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
	white-space: nowrap;
	box-sizing: border-box !important;
}

body.plus #content button:not(.icon):hover:not(.disabled) .button-contents,
body.plus #content input[type="submit"]:hover,
#content.plus button:not(.icon):hover:not(.disabled) .button-contents {
	filter: brightness(1.05);
	transform: translateY(-1px);
	box-shadow: 0 2px 5px rgba(30, 50, 36, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

body.plus #content button:not(.icon):active:not(.disabled) .button-contents,
#content.plus button:not(.icon):active:not(.disabled) .button-contents {
	transform: translateY(1px);
	filter: brightness(0.96);
}

/* Plus: troop / animal package cards */
#content.plus .unitPkgProducts {
	margin-top: 8px;
}
#content.plus .unitPkgCard {
	height: auto !important;
	min-height: 240px;
	padding-bottom: 10px;
	background-size: 100% 100%;
	margin-left: 6px;
	margin-right: 6px;
}
#content.plus .unitPkgCard a.bookProduct {
	display: none;
}
#content.plus .unitPkgUnits {
	text-align: right !important;
	padding: 4px 8px !important;
	font-size: 11px;
	line-height: 1.45;
	min-height: 72px;
	vertical-align: top;
}
#content.plus .unitPkgLine {
	margin: 2px 0;
	white-space: nowrap;
}
#content.plus .unitPkgLine .unit {
	vertical-align: middle;
}
#content.plus .unitPkgBuy {
	text-align: center !important;
	padding: 6px 8px 10px !important;
	vertical-align: middle;
}
#content.plus .unitPkgForm {
	margin: 0;
	display: block;
	width: 100%;
}
body.plus #content button.unitPkgBuyBtn,
body.plus #content button[type="submit"].unitPkgBuyBtn,
#content.plus button.unitPkgBuyBtn,
#content.plus button[type="submit"].unitPkgBuyBtn,
#content.plus .unitPkgBuyBtn {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto;
	max-width: 120px;
	min-width: 88px;
	min-height: 28px !important;
	height: auto !important;
	margin: 0 auto;
	padding: 5px 14px !important;
	border: 1px solid #6b5420 !important;
	border-radius: 5px !important;
	cursor: pointer;
	box-sizing: border-box !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	line-height: 1.3 !important;
	letter-spacing: 0;
	color: #2a1f08 !important;
	text-shadow: 0 1px 0 rgba(255, 245, 210, 0.4);
	background: linear-gradient(180deg, #f0d36a 0%, #d4a83a 48%, #b88722 100%) !important;
	box-shadow:
		0 1px 3px rgba(40, 55, 30, 0.22),
		inset 0 1px 0 rgba(255, 250, 220, 0.5),
		inset 0 -1px 0 rgba(90, 65, 15, 0.15);
	transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
	white-space: nowrap;
}
body.plus #content button.unitPkgBuyBtn:hover,
body.plus #content button[type="submit"].unitPkgBuyBtn:hover,
#content.plus button.unitPkgBuyBtn:hover,
#content.plus button[type="submit"].unitPkgBuyBtn:hover,
#content.plus .unitPkgBuyBtn:hover {
	filter: brightness(1.04);
	transform: translateY(-1px);
	box-shadow:
		0 2px 5px rgba(40, 55, 30, 0.26),
		inset 0 1px 0 rgba(255, 250, 220, 0.6),
		inset 0 -1px 0 rgba(90, 65, 15, 0.18);
}
body.plus #content button.unitPkgBuyBtn:active,
#content.plus button.unitPkgBuyBtn:active,
#content.plus .unitPkgBuyBtn:active {
	transform: translateY(1px);
	filter: brightness(0.96);
}
#content.plus .unitPkgNoGold {
	display: inline-block;
	padding: 8px 14px;
	border-radius: 6px;
	border: 1px solid #c9a8a8;
	background: #f8ecec;
	color: #8a3030;
	font-size: 13px;
	font-weight: 700;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}
#content.plus .unitPkgStatus {
	margin: 8px 0;
}

/* Egypt grain advisor (negative crop) */
.egyptCropAdvisorOverlay {
	position: fixed;
	inset: 0;
	z-index: 200;
	background: rgba(20, 18, 12, 0.55);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	box-sizing: border-box;
	font-family: "Vazirmatn", Tahoma, sans-serif;
}
.egyptCropAdvisorPopup {
	position: relative;
	margin: 0 !important;
	max-width: 560px;
	width: 100%;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.35);
	animation: egyptAdvisorIn 0.35s ease-out;
}
@keyframes egyptAdvisorIn {
	from { opacity: 0; transform: translateY(12px) scale(0.98); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}
.egyptCropAdvisorPopup a.close.egyptCropAdvisorClose {
	left: 10px;
	right: auto;
	top: 8px;
	width: 22px;
	height: 22px;
	line-height: 20px;
	text-align: center;
	font-size: 18px;
	color: #5a4630;
	text-decoration: none;
	z-index: 5;
}
.egyptCropAdvisorMiddle {
	min-height: 0 !important;
	padding: 18px 22px 14px !important;
}
.egyptCropAdvisorLayout {
	display: flex;
	flex-direction: row-reverse;
	gap: 16px;
	align-items: flex-start;
}
.egyptCropAdvisorArt img {
	width: 120px;
	height: 140px;
	display: block;
}
.egyptCropAdvisorCopy {
	flex: 1;
	text-align: right;
}
.egyptCropAdvisorCopy h4 {
	margin: 0 0 10px;
	font-size: 18px;
	font-weight: 700;
	color: #3a2c1a;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}
.egyptCropAdvisorSpoken {
	font-size: 13.5px;
	line-height: 1.85;
	color: #2f271c;
}
.egyptCropAdvisorSpoken p {
	margin: 0 0 10px;
}
.egyptCropAdvisorActions {
	margin-top: 14px;
}
.egyptCropAdvisorForm {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-start;
}
body:not(.login) button.egyptCropAdvisorBuy,
body:not(.login) button.egyptCropAdvisorDismiss,
.egyptCropAdvisorBuy,
.egyptCropAdvisorDismiss {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	padding: 8px 14px !important;
	border-radius: 6px !important;
	cursor: pointer;
	border: 1px solid #8a7348 !important;
	background: linear-gradient(180deg, #f3e4b8 0%, #d9c07a 100%) !important;
	color: #2f271c !important;
	box-shadow: none !important;
}
body:not(.login) button.egyptCropAdvisorDismiss,
.egyptCropAdvisorDismiss {
	background: linear-gradient(180deg, #f0ebe3 0%, #d8d0c4 100%) !important;
	border-color: #a89a86 !important;
}
body:not(.login) button.egyptCropAdvisorBuy:disabled,
.egyptCropAdvisorBuy:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}
.egyptCropAdvisorSilverHint {
	margin: 10px 0 0;
	font-size: 12px;
	color: #5a4a36;
}
#res li.r4 .value.egyptCropNeg,
#l4.egyptCropNeg {
	color: #b00000 !important;
	font-weight: 700;
}
body.plus .egyptGrainOffer .cost .silver,
.egyptGrainStatus {
	font-family: "Vazirmatn", Tahoma, sans-serif;
}
@media (max-width: 560px) {
	.egyptCropAdvisorLayout {
		flex-direction: column;
		align-items: center;
	}
	.egyptCropAdvisorCopy {
		text-align: center;
	}
	.egyptCropAdvisorForm {
		justify-content: center;
	}
}

/* Map drag-to-pan affordance */
#mapContainer.map-dragging,
#mapContainer.map-dragging .mapContainerData,
#mapContainer.map-dragging .tile {
	cursor: grabbing !important;
	user-select: none !important;
}
#mapContainer,
#mapData {
	cursor: grab;
	touch-action: none;
}

/* Quest 10 wrong-coordinates feedback */
#qstd .qstCoordError,
#qstd p.error {
	color: #a01818;
	font-weight: bold;
	margin: 8px 0 4px;
}

/* --------------------------------------------------------------------------
   Admin system message (Mssg.php) ? Vazirmatn + clean form layout
   -------------------------------------------------------------------------- */
body.statistics #content.statistics,
body.statistics #content.statistics h1,
body.statistics #content.statistics h4,
body.statistics #content.statistics td,
body.statistics #content.statistics p,
body.statistics #content.statistics a,
body.statistics #content.statistics .titleInHeader {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

#content.statistics .mssgForm {
	margin: 0 0 12px;
}

#content.statistics table.mssgTable {
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 1px;
	background: transparent !important;
	border: 0 !important;
}

#content.statistics table.mssgTable td.rbg {
	text-align: center;
	font-weight: 700;
	padding: 8px 10px;
	color: #1e3224;
}

#content.statistics table.mssgTable td {
	text-align: center;
	padding: 10px 12px;
	vertical-align: top;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
}

#content.statistics .mssgHint,
#content.statistics .mssgConfirmQ,
#content.statistics .mssgStatus,
#content.statistics .mssgDelete {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	color: #2d4a32;
	line-height: 1.7;
	text-align: center;
}

#content.statistics .mssgConfirmQ {
	width: 55%;
	text-align: right;
}

#content.statistics textarea.mssgTextarea {
	display: block;
	width: 96%;
	max-width: 580px;
	min-height: 220px;
	margin: 10px auto 0;
	padding: 8px 10px;
	box-sizing: border-box;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 1.6;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	resize: vertical;
}

#content.statistics .mssgActions {
	text-align: center;
}

#content.statistics .mssgActions input[type="submit"] {
	margin: 0 4px;
	min-width: 88px;
}

#content.statistics .mssgDelete {
	margin: 10px 0 0;
}

#content.statistics .mssgDelete a {
	color: #8a1f1f;
	font-weight: 700;
	text-decoration: none;
}

#content.statistics .mssgDelete a:hover {
	text-decoration: underline;
}

#content.statistics .mssgPreview {
	max-width: 640px;
	margin: 10px auto 0;
	padding: 12px 14px;
	border-radius: 8px;
	border: 1px solid rgba(45, 74, 50, 0.16);
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	color: #1a2418;
	line-height: 1.7;
	text-align: right;
	direction: rtl;
}

#content.statistics .mssgStatus {
	margin: 16px 0;
	font-size: 14px;
}

/* --------------------------------------------------------------------------
   Admin mass letter (Mass.php) ? reuse Mssg form look + field rows / smilies
   -------------------------------------------------------------------------- */
#content.statistics .massForm {
	margin: 0 0 12px;
}

#content.statistics table.massTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.massTable td.massField {
	text-align: right;
	vertical-align: middle;
}

#content.statistics input.massInput[type="text"] {
	display: inline-block;
	width: 92%;
	max-width: 320px;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
}

#content.statistics input.massInput[type="text"]:focus {
	outline: none;
	border-color: #2f6f3e;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18);
}

#content.statistics .massUnits {
	margin: 8px auto 0;
	max-width: 640px;
}

#content.statistics .massUnits a {
	color: #2f6f3e;
	font-weight: 700;
	text-decoration: none;
	margin-right: 6px;
}

#content.statistics .massUnits a:hover {
	text-decoration: underline;
}

#content.statistics .massSmilies {
	max-width: 640px;
	margin: 10px auto 0;
	padding: 10px 12px;
	border-radius: 8px;
	border: 1px solid rgba(45, 74, 50, 0.16);
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	text-align: center;
	line-height: 1.8;
}

#content.statistics .massSmilies a {
	display: inline-block;
	margin: 2px 3px;
	vertical-align: middle;
}

/* --------------------------------------------------------------------------
   Admin maintenance settings (maintenanceset.php) ? reuse Mssg/Mass form look
   -------------------------------------------------------------------------- */
#content.statistics .maintForm {
	margin: 0 0 12px;
}

#content.statistics table.maintTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.maintTable td.massField {
	text-align: right;
	vertical-align: middle;
}

#content.statistics select.maintSelect {
	display: inline-block;
	width: auto;
	min-width: 140px;
	max-width: 220px;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
}

#content.statistics select.maintSelect:focus {
	outline: none;
	border-color: #2f6f3e;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18);
}

#content.statistics .maintActive {
	color: #1e4a8a;
}

#content.statistics a.maintLink {
	color: #2f6f3e;
	font-weight: 700;
	text-decoration: none;
}

#content.statistics a.maintLink:hover {
	text-decoration: underline;
}

#content.statistics a.maintEnd {
	color: #8a1f1f;
}

/* Player-facing maintenance.php */
#content.login .maintPlayerBox {
	padding: 8px 4px 16px;
	font-family: "Vazirmatn", Tahoma, sans-serif;
	text-align: center;
}
#content.login .maintPlayerHello {
	font-size: 14px;
	line-height: 1.7;
	margin: 0 0 14px;
	color: #2d4a32;
}
#content.login .maintPlayerTimer {
	margin: 0 auto 16px;
	max-width: 420px;
	padding: 12px 14px;
	border-radius: 8px;
	border: 1px solid rgba(45, 74, 50, 0.18);
	background: linear-gradient(180deg, #fffefb, #f3ebe0);
}
#content.login .maintPlayerTimerLabel {
	margin: 0 0 6px;
	font-weight: 600;
	color: #2d4a32;
}
#content.login .maintPlayerTimerValue {
	margin: 0;
	font-size: 22px;
	letter-spacing: 0.5px;
	color: #1a2418;
}
#content.login .maintPlayerTimerHint {
	margin: 6px 0 0;
	font-size: 12px;
	color: #5a6b5c;
}
#content.login .maintPlayerMsg {
	margin: 0 auto 16px;
	max-width: 480px;
	text-align: right;
}
#content.login .maintPlayerText {
	padding: 12px;
	border-radius: 8px;
	border: 1px solid rgba(45, 74, 50, 0.16);
	background: #fffefb;
	line-height: 1.8;
	color: #1a2418;
}
#content.login .maintPlayerEmpty,
#content.login .maintPlayerWarn {
	color: #a33;
	font-weight: 700;
}

/* --------------------------------------------------------------------------
   Admin artefact settings (Artefact.php) ? reuse Mssg/Mass/maint form look
   -------------------------------------------------------------------------- */
#content.statistics .arteForm {
	margin: 0 0 12px;
}

#content.statistics table.arteTable {
	margin-bottom: 14px;
}

#content.statistics .arteHint {
	max-width: 640px;
	margin: 0 auto 10px;
}

#content.statistics .arteInfo {
	text-align: right;
	direction: rtl;
}

#content.statistics table.arteTable td.massLabel {
	width: 36%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.arteTable td.massField {
	text-align: right;
	vertical-align: middle;
	direction: rtl;
}

#content.statistics .arteInline {
	display: inline-block;
	margin: 0 4px;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics input.arteInput[type="number"] {
	display: inline-block;
	width: 96px;
	max-width: 40%;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
	vertical-align: middle;
	text-align: center;
	direction: ltr;
}

#content.statistics input.arteInput[type="number"]:focus {
	outline: none;
	border-color: #2f6f3e;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18);
}

#content.statistics table.timingTable {
	margin-bottom: 14px;
}

#content.statistics textarea.timingTextarea {
	min-height: 72px;
	width: 96%;
	max-width: 420px;
	margin: 0;
}

/* --------------------------------------------------------------------------
   Admin player login (plogin.php)
   -------------------------------------------------------------------------- */
#content.statistics .ploginForm {
	margin: 0 0 12px;
}

#content.statistics .ploginHint {
	max-width: 640px;
	margin: 0 auto 12px;
}

#content.statistics .ploginError {
	color: #8a1f1f;
}

#content.statistics table.ploginTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.ploginTable td.massField {
	text-align: right;
	vertical-align: middle;
}

/* --------------------------------------------------------------------------
   Admin server report (reports2.php)
   -------------------------------------------------------------------------- */
#content.statistics table.reports2Table {
	max-width: 100%;
	width: 100%;
	margin: 0 auto 14px;
}

#content.statistics table.reports2Table td.rbg {
	font-size: 12px;
	padding: 7px 6px;
	white-space: nowrap;
}

#content.statistics table.reports2Table td.mssgHint {
	font-size: 12px;
	padding: 7px 6px;
	text-align: center;
}

#content.statistics .ltrCell {
	direction: ltr;
	unicode-bidi: plaintext;
}

/* --------------------------------------------------------------------------
   Admin news editor (new.php) + manage news (managenews.php)
   -------------------------------------------------------------------------- */
#content.statistics .newsEditForm {
	margin: 0 0 12px;
}

#content.statistics table.newsEditTable td.massLabel,
#content.statistics table.manageNewsTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.newsEditTable td.massField,
#content.statistics table.manageNewsTable td.mssgHint {
	text-align: center;
	vertical-align: middle;
}

#content.statistics .newsRadioField,
#content.statistics .newsToggle {
	text-align: center !important;
}

#content.statistics label.newsRadio {
	display: inline-block;
	margin: 0 8px;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	color: #2d4a32;
	font-weight: 600;
	cursor: pointer;
}

#content.statistics .newsOn {
	color: #2f6f3e;
	font-weight: 700;
}

#content.statistics .newsOff {
	color: #8a1f1f;
	font-weight: 700;
}

#content.statistics .newsError {
	color: #8a1f1f;
}

#content.statistics input.newsReset[type="reset"],
#content.statistics .mssgActions input[type="reset"] {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 88px;
	margin: 0 4px;
	padding: 2px 10px !important;
	border: 0 !important;
	border-radius: 5px !important;
	background: linear-gradient(180deg, #6b6b45, #32321e) !important;
	color: #fff !important;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 15px !important;
	cursor: pointer;
	box-shadow: 0 1px 3px rgba(30, 50, 36, 0.2), inset 0 1px 0 rgba(255,255,255,0.12);
}

#content.statistics table.manageNewsTable {
	max-width: 720px;
}

#content.statistics table.manageNewsTable td.mssgActions {
	vertical-align: middle;
}

/* --------------------------------------------------------------------------
   Admin server config (conf.php)
   -------------------------------------------------------------------------- */
#content.statistics .confForm {
	margin: 0 0 12px;
}

#content.statistics table.confTable td.massLabel {
	width: 36%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.confTable td.massField {
	text-align: right;
	vertical-align: middle;
}

#content.statistics .confInlineField {
	direction: rtl;
}

#content.statistics input.confShort.massInput {
	width: 120px;
	max-width: 40%;
}

/* Admin plus items (pitems.php) */
#content.statistics table.pitemsTable {
	max-width: 920px;
}

#content.statistics table.pitemsTable td.pitemsNameHead,
#content.statistics table.pitemsTable td.pitemsCoinHead,
#content.statistics table.pitemsTable td.pitemsStatusHead {
	text-align: center;
	font-weight: 700;
	color: #1e3224;
}

#content.statistics table.pitemsTable td.pitemsName {
	width: 46%;
	text-align: right;
	line-height: 1.65;
}

#content.statistics table.pitemsTable td.pitemsCoin {
	width: 18%;
	white-space: nowrap;
}

#content.statistics table.pitemsTable td.pitemsStatus {
	width: 36%;
	text-align: right;
}

#content.statistics table.pitemsTable .pitemsAlias {
	display: block;
	margin-top: 2px;
	font-size: 11px;
	font-weight: 400;
	color: #5a6b5c;
	direction: ltr;
	text-align: left;
}

/* --------------------------------------------------------------------------
   Admin ads (ads.php)
   -------------------------------------------------------------------------- */
#content.statistics .adsForm {
	margin: 0 0 14px;
}

#content.statistics table.adsTable {
	margin-bottom: 14px;
}

#content.statistics table.adsTable td.massLabel {
	width: 40%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.adsTable td.massField {
	text-align: right;
	vertical-align: middle;
}

#content.statistics input.adsLtr.massInput {
	direction: ltr;
	text-align: left;
	width: 96%;
	max-width: 420px;
}

#content.statistics .adsSep {
	margin: 0 8px;
	color: #2d4a32;
}

#content.statistics table.adsListTable {
	max-width: 100%;
	width: 100%;
}

/* --------------------------------------------------------------------------
   Admin email / emailbk / rep / newsletter ? reuse Mssg/Mass cream forms
   -------------------------------------------------------------------------- */
#content.statistics .emailForm,
#content.statistics .repForm {
	margin: 0 0 12px;
}

#content.statistics .emailHint {
	max-width: 640px;
	margin: 0 auto 12px;
}

#content.statistics table.emailTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.emailTable td.massField {
	text-align: right;
	vertical-align: middle;
}

#content.statistics table.emailbkTable {
	max-width: 720px;
}

#content.statistics textarea.emailbkTextarea {
	width: 96%;
	max-width: 680px;
	min-height: 260px;
	direction: ltr;
	text-align: left;
	unicode-bidi: plaintext;
}

#content.statistics table.repTable {
	max-width: 100%;
	width: 100%;
	margin: 0 auto 14px;
}

#content.statistics table.repTable td.rbg {
	font-size: 12px;
	padding: 7px 6px;
	white-space: nowrap;
}

#content.statistics table.repTable td.mssgHint {
	font-size: 12px;
	padding: 7px 6px;
	text-align: center;
}

/* --------------------------------------------------------------------------
   Admin server messages (payam.php) + reports (repo.php)
   -------------------------------------------------------------------------- */
#content.statistics .payamForm,
#content.statistics .repoForm {
	margin: 0 0 14px;
}

#content.statistics .payamHint {
	max-width: 640px;
	margin: 0 auto 12px;
}

#content.statistics table.payamSearchTable {
	max-width: 520px;
}

#content.statistics table.payamListTable {
	max-width: 100%;
	width: 100%;
	margin: 0 auto 12px;
}

#content.statistics table.payamListTable td.rbg {
	font-size: 12px;
	padding: 7px 8px;
}

#content.statistics table.payamListTable td.mssgHint {
	font-size: 12px;
	padding: 7px 8px;
	text-align: center;
	vertical-align: middle;
}

#content.statistics table.payamListTable td.subject,
#content.statistics table.payamListTable td.sub {
	text-align: right;
}

#content.statistics table.payamListTable a {
	color: #2f6f3e;
	font-weight: 700;
	text-decoration: none;
}

#content.statistics table.payamListTable a:hover {
	text-decoration: underline;
}

#content.statistics .payamPager {
	margin: 8px 0 14px;
	text-align: center;
}

#content.statistics .payamAdmin .paper,
#content.statistics .repoAdmin #report_surround {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

/* --------------------------------------------------------------------------
   Admin auction add (admin.php?tid=6 / addauction.php)
   -------------------------------------------------------------------------- */
#content.statistics .auctionForm {
	margin: 0 0 14px;
}

#content.statistics table.auctionTable {
	max-width: 720px;
	width: 100%;
	margin: 0 auto 14px;
}

#content.statistics table.auctionTable td.rbg {
	font-size: 12px;
	padding: 7px 8px;
}

#content.statistics table.auctionTable td.mssgHint,
#content.statistics table.auctionTable td.massLabel,
#content.statistics table.auctionTable td.massField {
	font-size: 12px;
	padding: 7px 8px;
	text-align: center;
	vertical-align: middle;
}

#content.statistics table.auctionTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
}

#content.statistics table.auctionTable td.massField {
	text-align: right;
}

#content.statistics input.auctionQty.massInput,
#content.statistics input.auctionShort.massInput {
	width: 96px;
	max-width: 40%;
	text-align: center;
	direction: ltr;
}

#content.statistics .auctionCheck input[type="checkbox"] {
	width: 16px;
	height: 16px;
	cursor: pointer;
}

/* --------------------------------------------------------------------------
   Admin gold/silver edit (admin.php?tid=7 / editcredits.php)
   -------------------------------------------------------------------------- */
#content.statistics .creditsForm {
	margin: 0 0 16px;
}

#content.statistics table.creditsTable {
	max-width: 720px;
	width: 100%;
	margin: 0 auto 10px;
}

#content.statistics table.creditsTable td.rbg {
	font-size: 12px;
	padding: 7px 8px;
}

#content.statistics table.creditsTable td.mssgHint,
#content.statistics table.creditsTable td.mssgActions {
	font-size: 12px;
	padding: 8px;
	text-align: center;
	vertical-align: middle;
}

#content.statistics table.creditsTable input.massInput {
	width: 92%;
	max-width: 180px;
}

/* --------------------------------------------------------------------------
   Admin gold packages + ZarinPal settings
   -------------------------------------------------------------------------- */
#content.statistics .goldpkgForm,
#content.statistics .zarinpalForm {
	margin: 0 0 16px;
}

#content.statistics table.goldpkgTable,
#content.statistics table.zarinpalTable {
	max-width: 720px;
	width: 100%;
	margin: 0 auto 10px;
}

#content.statistics table.goldpkgListTable {
	max-width: 920px;
	width: 100%;
	margin: 0 auto 10px;
}

#content.statistics table.goldpkgListTable td.mssgHint,
#content.statistics table.goldpkgListTable td.mssgActions {
	font-size: 12px;
	padding: 8px;
	vertical-align: middle;
}

#content.statistics .goldpkgRowActions a {
	color: #2d4a32;
	font-weight: 700;
	text-decoration: none;
	margin-left: 8px;
}

#content.statistics .goldpkgRowActions a:hover {
	text-decoration: underline;
}

#content.statistics .goldpkgInlineDel {
	display: inline-block;
	margin: 0;
	vertical-align: middle;
}

#content.statistics .goldpkgInlineDel input[type="submit"] {
	min-width: 64px;
	margin: 0;
}

#content.statistics a.goldpkgCancel {
	display: inline-block;
	margin-right: 10px;
	color: #8a1f1f;
	font-weight: 700;
	text-decoration: none;
	vertical-align: middle;
}

#content.statistics .zarinpalHint {
	margin: 8px 0 0;
	font-size: 12px;
	text-align: right;
}

/* --------------------------------------------------------------------------
   Alliance forum admin (allianz.php?s=2&admin=newforum / editforum)
   Cream / forest / Vazirmatn ? reuse mssgForm patterns under #content.forum
   -------------------------------------------------------------------------- */
body.alliance #content.forum,
body.alliance #content.forum h1,
body.alliance #content.forum h4,
body.alliance #content.forum td,
body.alliance #content.forum th,
body.alliance #content.forum p,
body.alliance #content.forum a,
body.alliance #content.forum .titleInHeader,
body.alliance #content.forum label,
body.alliance #content.forum select,
body.alliance #content.forum input {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

#content.forum .forumForm {
	margin: 0 0 12px;
	direction: rtl;
	text-align: right;
}

#content.forum table.forumTable {
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 1px;
	background: transparent !important;
	border: 0 !important;
}

#content.forum table.forumTable td.rbg {
	text-align: center;
	font-weight: 700;
	padding: 8px 10px;
	color: #1e3224;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
}

#content.forum table.forumTable td {
	padding: 10px 12px;
	vertical-align: middle;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
}

#content.forum table.forumTable td.massLabel {
	width: 28%;
	text-align: right;
	font-weight: 600;
	color: #2d4a32;
}

#content.forum table.forumTable td.massField {
	text-align: right;
}

#content.forum table.forumTable .mssgHint {
	margin: 8px 0 0;
	color: #2d4a32;
	line-height: 1.7;
	font-size: 12px;
	text-align: right;
}

#content.forum input.massInput[type="text"] {
	display: inline-block;
	width: 92%;
	max-width: 320px;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
}

#content.forum input.massInput[type="text"]:focus {
	outline: none;
	border-color: #2f6f3e;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18);
}

#content.forum select.forumSelect {
	display: inline-block;
	width: auto;
	min-width: 160px;
	max-width: 260px;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
}

#content.forum select.forumSelect:focus {
	outline: none;
	border-color: #2f6f3e;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18);
}

#content.forum .mssgActions {
	text-align: center;
}

#content.forum .mssgActions input[type="submit"] {
	margin: 0 4px;
	min-width: 88px;
}

#content.forum .forumAdminActions {
	margin: 12px 0;
	text-align: center;
}

#content.forum p.error.mssgHint,
#content.forum .mssgHint.error {
	color: #8a1f1f;
	font-weight: 600;
	text-align: center;
}

/* --------------------------------------------------------------------------
   Alliance options forms (allianz.php?s=5 / POST o=?)
   Cream / forest / Vazirmatn ? same pattern as forum admin forms
   -------------------------------------------------------------------------- */
body.alliance #content.alliance,
body.alliance #content.alliance h1,
body.alliance #content.alliance h4,
body.alliance #content.alliance td,
body.alliance #content.alliance th,
body.alliance #content.alliance p,
body.alliance #content.alliance a,
body.alliance #content.alliance label,
body.alliance #content.alliance select,
body.alliance #content.alliance input,
body.alliance #content.alliance textarea,
body.alliance #content.alliance button {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

#content.alliance .allyOptForm {
	margin: 0 0 12px;
	direction: rtl;
	text-align: right;
}

#content.alliance table.allyOptTable {
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 1px;
	background: transparent !important;
	border: 0 !important;
}

#content.alliance table.allyOptTable td.rbg {
	text-align: center;
	font-weight: 700;
	padding: 8px 10px;
	color: #1e3224;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
}

#content.alliance table.allyOptTable td,
#content.alliance table.allyOptTable th {
	padding: 10px 12px;
	vertical-align: middle;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	color: #1a2418;
}

#content.alliance table.allyOptTable td.massLabel {
	width: 28%;
	text-align: right;
	font-weight: 600;
	color: #2d4a32;
}

#content.alliance table.allyOptTable td.massField {
	text-align: right;
}

#content.alliance table.allyOptTable .mssgHint,
#content.alliance .allyOptHint {
	margin: 8px 0 0;
	color: #2d4a32;
	line-height: 1.7;
	font-size: 12px;
	text-align: right;
}

#content.alliance input.massInput[type="text"],
#content.alliance input.massInput[type="password"],
#content.alliance textarea.massTextarea {
	display: inline-block;
	width: 92%;
	max-width: 320px;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
}

#content.alliance textarea.massTextarea {
	display: block;
	width: 96%;
	max-width: 580px;
	min-height: 140px;
	height: auto;
	margin: 0 auto;
	padding: 8px 10px;
	line-height: 1.6;
	resize: vertical;
}

#content.alliance input.massInput[type="text"]:focus,
#content.alliance input.massInput[type="password"]:focus,
#content.alliance textarea.massTextarea:focus,
#content.alliance select.forumSelect:focus {
	outline: none;
	border-color: #2f6f3e;
	box-shadow: 0 0 0 3px rgba(47, 111, 62, 0.18);
}

#content.alliance select.forumSelect {
	display: inline-block;
	width: auto;
	min-width: 160px;
	max-width: 260px;
	height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	color: #1a2418;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-size: 13px;
	line-height: 30px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
	transition: border-color .15s ease, box-shadow .15s ease;
}

#content.alliance .mssgActions {
	text-align: center;
}

#content.alliance .mssgActions input[type="submit"],
#content.alliance .allyOptSubmit {
	margin: 0 4px;
	min-width: 88px;
	height: 34px;
	padding: 0 14px;
	border: 1px solid #2a5a34;
	border-radius: 6px;
	background: linear-gradient(180deg, #3f8a4d, #2f6f3e);
	color: #fffefb;
	font-weight: 700;
	font-size: 13px;
	cursor: pointer;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

#content.alliance .mssgActions input[type="submit"]:hover,
#content.alliance .allyOptSubmit:hover {
	background: linear-gradient(180deg, #469656, #357a45);
}

#content.alliance ul.allyOptList {
	list-style: none;
	margin: 0 auto 12px;
	padding: 0;
	max-width: 640px;
	direction: rtl;
	text-align: right;
}

#content.alliance ul.allyOptList li {
	margin: 0 0 6px;
	padding: 10px 12px;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	border-radius: 6px;
}

#content.alliance ul.allyOptList label {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	color: #1e3224;
	font-weight: 600;
}

#content.alliance ul.allyOptList input.radio {
	margin: 0;
	flex: 0 0 auto;
}

#content.alliance .allyOptDescGrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	max-width: 640px;
	margin: 0 auto 12px;
	direction: rtl;
}

#content.alliance .allyOptDescGrid .allyOptDescCol {
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	border-radius: 6px;
	padding: 10px 12px;
}

#content.alliance .allyOptDescGrid .allyOptDescCol .massLabel {
	display: block;
	font-weight: 600;
	color: #2d4a32;
	margin-bottom: 8px;
}

#content.alliance .allyOptDescGrid textarea.massTextarea {
	width: 100%;
	max-width: none;
	min-height: 180px;
}

#content.alliance table.allyOptListTable {
	width: 100%;
	max-width: 640px;
	margin: 0 auto 16px;
	border-collapse: separate;
	border-spacing: 1px;
}

#content.alliance table.allyOptListTable td {
	padding: 8px 12px;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	vertical-align: middle;
	text-align: right;
}

#content.alliance table.allyOptListTable td.abo {
	width: 36px;
	text-align: center;
}

#content.alliance table.allyOptListTable td.noData {
	text-align: center;
	color: #5a6b5c;
}

#content.alliance table#memberAdministration {
	width: 100%;
	max-width: 640px;
	margin: 0 auto 12px;
	border-collapse: separate;
	border-spacing: 1px;
	direction: rtl;
}

#content.alliance table#memberAdministration th,
#content.alliance table#memberAdministration td {
	padding: 8px 6px;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	text-align: center;
	vertical-align: middle;
	font-size: 12px;
}

#content.alliance table#memberAdministration input.text {
	width: 92%;
	max-width: 140px;
	height: 28px;
	padding: 0 8px;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	box-sizing: border-box;
}

#content.alliance .allyOptRadioRow {
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: flex-start;
}

#content.alliance .allyOptRadioRow label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	color: #1e3224;
}

#content.alliance p.error,
#content.alliance p.error3 {
	max-width: 640px;
	margin: 8px auto;
	text-align: center;
	color: #8a1f1f;
	font-weight: 600;
}

#content.alliance .allyOptNotice {
	max-width: 640px;
	margin: 12px auto;
	padding: 10px 12px;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	border-radius: 6px;
	direction: rtl;
	text-align: right;
	color: #2d4a32;
	line-height: 1.7;
}

#content.alliance .allyOptNotice .title {
	font-weight: 700;
	margin-bottom: 6px;
	color: #1e3224;
}

@media (max-width: 640px) {
	#content.alliance .allyOptDescGrid {
		grid-template-columns: 1fr;
	}
}

/* Building demolish panel (build.php) ? high-contrast destructive control */
#content.build .demolishPanel {
	clear: both;
	margin: 16px 0 8px;
	padding: 12px 14px;
	direction: rtl;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif;
	background: linear-gradient(180deg, #fff8f2 0%, #f3e6dc 100%);
	border: 1px solid #8a2f24;
	border-radius: 6px;
	box-sizing: border-box;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

#content.build .demolishPanel .demolishTitle {
	font-weight: 700;
	font-size: 14px;
	color: #5a1610;
	margin-bottom: 6px;
}

#content.build .demolishPanel .demolishDesc {
	margin: 0 0 10px;
	line-height: 1.7;
	color: #2c1a16;
	font-size: 12px;
}

#content.build .demolishPanel .demolishError {
	margin: 0 0 8px;
	color: #7a1a12;
	font-weight: 700;
	font-size: 12px;
}

#content.build .demolishPanel .demolishForm {
	margin: 0;
	display: inline-block;
	max-width: 100%;
}

#content.build .demolishBtn,
#content.build button.demolishBtn[type="submit"] {
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	box-sizing: border-box;
	max-width: 100%;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	cursor: pointer;
	border: 2px solid #5a1610 !important;
	border-radius: 5px !important;
	padding: 8px 18px !important;
	background: linear-gradient(180deg, #b83a2a 0%, #7a1f16 100%) !important;
	color: #fffef8 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	letter-spacing: 0;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.35);
	box-shadow: 0 1px 2px rgba(60, 20, 12, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.18);
	white-space: normal;
	word-break: break-word;
}

#content.build .demolishBtn:hover,
#content.build button.demolishBtn[type="submit"]:hover {
	background: linear-gradient(180deg, #c94a38 0%, #8f281c 100%) !important;
	border-color: #4a120c !important;
	filter: none;
	transform: none;
}

#content.build .demolishBtn:active,
#content.build button.demolishBtn[type="submit"]:active {
	background: linear-gradient(180deg, #8f281c 0%, #6a1810 100%) !important;
	transform: translateY(1px);
	filter: none;
}

#content.build .demolishBtnCancel,
#content.build button.demolishBtn.demolishBtnCancel[type="submit"] {
	background: linear-gradient(180deg, #5f6e5c 0%, #3a4638 100%) !important;
	border-color: #2a3428 !important;
	color: #f7f5ef !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
}

#content.build .demolishBtnCancel:hover,
#content.build button.demolishBtn.demolishBtnCancel[type="submit"]:hover {
	background: linear-gradient(180deg, #6e7e6a 0%, #465446 100%) !important;
	border-color: #1e281c !important;
}

@media (max-width: 640px) {
	#content.build .demolishPanel {
		padding: 12px;
	}

	#content.build .demolishBtn,
	#content.build button.demolishBtn[type="submit"] {
		width: 100%;
		min-height: 42px;
		padding: 10px 14px !important;
		font-size: 14px !important;
		text-align: center;
	}
}

/* Flash sits below the village map ? never overlays clickareas */
.demolishFlash {
	position: relative;
	z-index: 1;
	clear: both;
	max-width: 640px;
	margin: 12px auto 4px;
	padding: 10px 36px 10px 12px;
	direction: rtl;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif;
	border-radius: 6px;
	font-weight: 600;
	line-height: 1.6;
	box-sizing: border-box;
	pointer-events: auto;
}

.demolishFlash.ok {
	background: linear-gradient(180deg, rgba(236, 247, 236, 0.98), rgba(220, 236, 220, 0.92));
	border: 1px solid rgba(45, 74, 50, 0.25);
	color: #1e3224;
}

.demolishFlash.cancel {
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	color: #2d4a32;
}

.demolishFlash .demolishFlashClose {
	position: absolute;
	top: 6px;
	left: 8px;
	border: 0;
	background: transparent;
	color: inherit;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	padding: 2px 6px;
	opacity: 0.75;
}

.demolishFlash .demolishFlashClose:hover {
	opacity: 1;
}

/* Combat simulator (warsim): match reinforcement troop tables, grey bg, dark readable text */
body.warsim #content.warsim,
#content.warsim {
	direction: rtl;
	text-align: right;
	overflow: visible !important;
	max-width: 100%;
	box-sizing: border-box;
	color: #222 !important;
}

#content.warsim form {
	clear: both;
	overflow: visible;
}

#content.warsim p.warsimHint {
	margin: 0 0 12px;
	padding: 8px 10px;
	line-height: 1.7;
	color: #222 !important;
	background: #E7E7E7;
	border: 1px solid #C0C0C0;
	border-radius: 0;
	clear: both;
}

/* Tribe / attack-type picker: 4 equal columns (was 33% ? 4 ? overflow) */
#content.warsim table#select {
	width: 100%;
	max-width: 100%;
	table-layout: fixed;
	margin-bottom: 12px;
	border-collapse: collapse;
	background: #E7E7E7;
	color: #222 !important;
}

#content.warsim table#select tbody td {
	width: 25% !important;
	padding: 6px 5px;
	vertical-align: top;
	box-sizing: border-box;
	color: #222 !important;
	background: #E7E7E7;
}

#content.warsim table#select .choice {
	line-height: 1.7;
	white-space: normal;
	color: #222 !important;
}

#content.warsim table#select .choice label {
	display: block;
	white-space: normal;
	color: #222 !important;
}

/* Side-by-side attacker / defender ? keep floats but prevent white-box overflow */
#content.warsim #attacker,
#content.warsim #defender {
	width: 49% !important;
	max-width: 49%;
	box-sizing: border-box;
	margin-bottom: 12px;
	min-height: 0;
	overflow: visible !important;
}

#content.warsim #attacker {
	float: right !important;
}

#content.warsim #defender {
	float: left !important;
}

#content.warsim .fighterType {
	float: right;
	margin-bottom: 8px;
	max-width: 100%;
}

#content.warsim .fighterType .boxes {
	max-width: 100%;
	position: relative;
	display: inline-block;
	min-height: 22px;
}

#content.warsim .fighterType .boxes-contents {
	padding: 3px 10px;
	color: #fff !important;
	white-space: nowrap;
	position: relative;
	z-index: 1;
}

/*
 * Classic Travian darkGray header boxes.
 * FA compact pack was missing these rules; also force a solid #666 fill so
 * ???? ???? never renders as a blank white box if sprites fail.
 */
.boxes.boxesColor.darkGray,
.boxes.boxesColor.darkgray,
#content.warsim .fighterType .boxes.boxesColor.darkGray,
#content.warsim .fighterType .boxes.boxesColor.darkgray {
	position: relative !important;
	display: inline-block !important;
	background-color: #666 !important;
	background-image: none !important;
	min-height: 22px;
	border-radius: 2px;
}

.boxesColor.darkGray .boxes-container,
.boxesColor.darkgray .boxes-container,
.boxesColor.darkGray .boxes-contents,
.boxesColor.darkgray .boxes-contents,
#content.warsim .fighterType .boxesColor.darkGray .boxes-contents,
#content.warsim .fighterType .boxesColor.darkgray .boxes-contents {
	color: #FFF !important;
	background: transparent !important;
}

.boxesColor.darkGray .boxes-tl,
.boxesColor.darkGray .boxes-tc,
.boxesColor.darkGray .boxes-tr,
.boxesColor.darkGray .boxes-ml,
.boxesColor.darkGray .boxes-mc,
.boxesColor.darkGray .boxes-mr,
.boxesColor.darkGray .boxes-bl,
.boxesColor.darkGray .boxes-bc,
.boxesColor.darkGray .boxes-br,
.boxesColor.darkgray .boxes-tl,
.boxesColor.darkgray .boxes-tc,
.boxesColor.darkgray .boxes-tr,
.boxesColor.darkgray .boxes-ml,
.boxesColor.darkgray .boxes-mc,
.boxesColor.darkgray .boxes-mr,
.boxesColor.darkgray .boxes-bl,
.boxesColor.darkgray .boxes-bc,
.boxesColor.darkgray .boxes-br {
	background-image: url(../gpack/travian_Travian_4.0_41/img/round/boxes/darkGray/sprite.png);
}

.boxesColor.darkGray .boxes-ml,
.boxesColor.darkGray .boxes-mr,
.boxesColor.darkGray .boxes-tc,
.boxesColor.darkGray .boxes-bc,
.boxesColor.darkGray .boxes-mc,
.boxesColor.darkgray .boxes-ml,
.boxesColor.darkgray .boxes-mr,
.boxesColor.darkgray .boxes-tc,
.boxesColor.darkgray .boxes-bc,
.boxesColor.darkgray .boxes-mc {
	background-image: none !important;
	background-color: #666 !important;
}

.boxesColor.darkGray .boxes-tl,
.boxesColor.darkgray .boxes-tl {
	background-position: 0 0;
}

.boxesColor.darkGray .boxes-tr,
.boxesColor.darkgray .boxes-tr {
	background-position: -25px 0;
}

.boxesColor.darkGray .boxes-bl,
.boxesColor.darkgray .boxes-bl {
	background-position: 0 -26px;
}

.boxesColor.darkGray .boxes-br,
.boxesColor.darkgray .boxes-br {
	background-position: -26px -26px;
}

#content.warsim .fighterType .boxesColor.darkGray .boxes-contents,
#content.warsim .fighterType .boxesColor.darkgray .boxes-contents,
#content.warsim .fighterType .boxesColor.red .boxes-contents,
#content.warsim .fighterType .boxesColor.green .boxes-contents {
	color: #fff !important;
}

#content.warsim .border {
	border: 1px solid #C0C0C0;
	margin-bottom: 10px;
	clear: both;
	overflow: visible;
	background: #E7E7E7;
}

#content.warsim table.fill_in {
	width: 100%;
	max-width: 100%;
	table-layout: auto;
	border-collapse: collapse;
	background: #E7E7E7 !important;
	color: #222 !important;
}

#content.warsim table.fill_in th {
	padding: 3px 4px;
	font-weight: 700;
	text-align: center;
	background: #D3D3D3 !important;
	color: #222 !important;
}

#content.warsim table.fill_in td {
	padding: 2px 1px;
	color: #222 !important;
	background: #E7E7E7 !important;
}

#content.warsim table.fill_in td.details {
	padding: 0;
	background: #E7E7E7 !important;
}

/* Grey troop rows like reinforcement infos ? override compact.css white #FFF */
#content.warsim table.fill_in td.details > table,
#content.warsim table.fill_in td.details table,
div.warsim table.fill_in td.details table {
	width: 100%;
	max-width: 100%;
	table-layout: auto;
	border-collapse: collapse;
	background: #E7E7E7 !important;
	background-color: #E7E7E7 !important;
	color: #222 !important;
}

#content.warsim table.fill_in td.details table th,
#content.warsim table.fill_in td.details table td,
#content.warsim table.fill_in td.details table .desc,
#content.warsim table.fill_in td.details table .value,
#content.warsim table.fill_in td.details table .research,
#content.warsim table.fill_in td.details table .ico {
	color: #222 !important;
	background: #E7E7E7 !important;
}

#content.warsim table.fill_in td.details table th.ico,
#content.warsim table.fill_in td.details table td.ico {
	width: 20px;
	padding: 2px 4px;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

#content.warsim table.fill_in td.details table th.desc,
#content.warsim table.fill_in td.details table td.desc {
	padding: 2px 5px;
	vertical-align: middle;
	color: #222 !important;
	white-space: normal;
	word-break: break-word;
	overflow: visible;
	text-overflow: clip;
	line-height: 1.35;
}

#content.warsim table.fill_in td.details table th.value,
#content.warsim table.fill_in td.details table td.value {
	width: 46px;
	padding: 2px 2px;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

#content.warsim table.fill_in td.details table th.research,
#content.warsim table.fill_in td.details table td.research {
	width: 28px;
	padding: 2px 3px 2px 2px;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

#content.warsim table.fill_in td.details table thead th {
	font-size: 11px;
	font-weight: 600;
	color: #222 !important;
	background: #D3D3D3 !important;
	padding: 3px 2px;
	text-align: center;
}

#content.warsim table.fill_in td.details table img.unit,
#content.warsim table.fill_in td.details table img.gebIcon,
#content.warsim table.results img.unit,
#content.warsim table.results img.gebIcon {
	display: inline-block !important;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	visibility: visible !important;
	opacity: 1 !important;
	position: relative;
	z-index: 2;
}

#content.warsim table.fill_in td.details table td.value input.text,
#content.warsim table.fill_in td.details table td.research input.text {
	display: inline-block;
	box-sizing: border-box;
	direction: ltr;
	text-align: center;
	max-width: 100%;
	color: #222 !important;
	background: #F5F5F5 !important;
	border: 1px solid #AAA;
}

#content.warsim table.fill_in td.details table td.value input.text {
	width: 38px;
}

#content.warsim table.fill_in td.details table td.research input.text {
	width: 18px;
}

/* Results + simulate button must clear the float columns */
#content.warsim table.results,
#content.warsim h4.round,
#content.warsim p.btn {
	clear: both;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	color: #222 !important;
}

#content.warsim table.results {
	margin-bottom: 16px;
	table-layout: auto;
	background: #E7E7E7 !important;
	color: #222 !important;
	border: 1px solid #C0C0C0;
}

#content.warsim table.results tbody th,
#content.warsim table.results tbody td {
	color: #222 !important;
	background: #E7E7E7 !important;
}

#content.warsim table.results tbody th {
	text-align: right;
	padding: 2px 4px;
}

#content.warsim table.results tbody td {
	text-align: center;
	padding: 2px;
}

#content.warsim h1,
#content.warsim h4,
#content.warsim p,
#content.warsim label,
#content.warsim td,
#content.warsim th {
	color: #222 !important;
}

/* Keep colored header labels white on red/green/gray boxes only */
#content.warsim .fighterType .boxes-contents {
	color: #fff !important;
}

@media screen and (max-width: 720px) {
	#content.warsim #attacker,
	#content.warsim #defender {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	#content.warsim table#select,
	#content.warsim table#select tbody,
	#content.warsim table#select tr {
		display: block;
		width: 100%;
	}

	#content.warsim table#select tbody td {
		display: block;
		width: 100% !important;
		box-sizing: border-box;
	}
}

/*
 * Oasis / village tile details ? classic Travian:
 * image + options on the RIGHT, land/troops (#map_details) on the LEFT of the image.
 * Use grid (not floats/absolute) so animals never spill into sidebars.
 */
body.map #content.positionDetails,
#content.positionDetails {
	overflow: visible !important;
	min-height: 0 !important;
	padding-bottom: 12px !important;
}

/* Avoid huge empty white void under short oasis/village detail content */
body.map #contentOuterContainer .contentContainer {
	min-height: 0 !important;
	height: auto !important;
}

body.map #contentOuterContainer {
	float: right !important;
	position: relative !important;
	width: 605px !important;
	margin-right: 189px !important;
	left: auto !important;
	right: auto !important;
}

#content.positionDetails #tileDetails,
#tileDetails {
	display: grid !important;
	grid-template-columns: 217px 319px;
	grid-template-areas: "details image";
	column-gap: 16px;
	align-items: start;
	justify-content: start;
	width: 552px !important;
	max-width: 100%;
	direction: ltr; /* fixed column order regardless of page RTL */
	position: relative !important;
	overflow: visible !important;
	min-height: 0 !important;
	height: auto !important;
	box-sizing: border-box !important;
}

#tileDetails .detailImage {
	grid-area: image;
	float: none !important;
	margin: 0 !important;
	width: 319px !important;
	max-width: 319px !important;
	min-height: 218px;
	height: auto !important;
	padding-top: 0 !important;
	position: relative !important;
	z-index: 1;
	box-sizing: border-box !important;
	overflow: visible !important;
	direction: rtl;
}

#content.positionDetails #options,
div.positionDetails #options,
#tileDetails .detailImage #options {
	width: 319px !important;
	max-width: 319px !important;
	margin-top: 218px !important;
	box-sizing: border-box !important;
	position: relative !important;
	float: none !important;
}

#tileDetails .detailImage .option {
	margin-top: 2px;
	padding-right: 10px;
	padding-top: 4px;
}

#tileDetails #map_details,
#tileDetails div#map_details,
#content.positionDetails #tileDetails #map_details {
	grid-area: details;
	position: static !important;
	float: none !important;
	width: 217px !important;
	max-width: 217px !important;
	right: auto !important;
	left: auto !important;
	top: auto !important;
	bottom: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	z-index: 2;
	overflow: visible !important;
	box-sizing: border-box !important;
	direction: rtl;
	text-align: right;
}

#tileDetails h4 {
	margin: 0 0 5px;
	font-size: 13px;
	color: #222 !important;
}

#tileDetails table#distribution,
#tileDetails table#troop_info,
#tileDetails table#village_info {
	width: 217px !important;
	max-width: 100%;
	table-layout: fixed;
	color: #222 !important;
	margin-bottom: 12px;
	background: transparent;
}

#tileDetails table#troop_info td,
#tileDetails table#distribution td,
#tileDetails table#village_info td,
#tileDetails table#village_info th {
	color: #222 !important;
	vertical-align: middle;
}

#tileDetails table#troop_info td.ico,
#tileDetails table#troop_info img.unit,
#tileDetails table#distribution td.ico,
#tileDetails table#distribution img {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: relative;
	z-index: 2;
	width: 16px;
	height: 16px;
	vertical-align: middle;
}

#tileDetails table#troop_info .val,
#tileDetails table#distribution .val {
	font-weight: bold;
	color: #222 !important;
	white-space: nowrap;
	overflow: visible;
	text-align: left;
	padding-left: 5px;
}

#tileDetails table#troop_info .desc,
#tileDetails table#distribution .desc {
	color: #222 !important;
}

/* Rally / reports: nature unit icons must not sit under neighboring cells */
div#build.gid16 table.troop_details tbody.units td img.unit,
div.a2b table.troop_details tbody.units td img.unit,
div.reports table tbody.units td img.unit,
table.troop_details tbody.units img.unit.u31,
table.troop_details tbody.units img.unit.u32,
table.troop_details tbody.units img.unit.u33,
table.troop_details tbody.units img.unit.u34,
table.troop_details tbody.units img.unit.u35,
table.troop_details tbody.units img.unit.u36,
table.troop_details tbody.units img.unit.u37,
table.troop_details tbody.units img.unit.u38,
table.troop_details tbody.units img.unit.u39,
table.troop_details tbody.units img.unit.u40 {
	position: relative;
	z-index: 2;
	display: inline-block !important;
	visibility: visible !important;
	overflow: visible !important;
}

/* a2b ? send troops: troop grid, destination, mission, catapult */
#content.a2b form,
div.a2b form {
	direction: rtl;
}

#content.a2b table#troops,
div.a2b table#troops {
	width: 100% !important;
	max-width: 100%;
	table-layout: fixed !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: #E7E7E7 !important;
	border: 1px solid #C0C0C0 !important;
	border-radius: 2px;
	margin: 8px 0 14px !important;
	line-height: 1.45;
	box-sizing: border-box;
	padding: 6px 4px !important;
	display: block;
}

#content.a2b table#troops tbody,
div.a2b table#troops tbody {
	display: block;
	width: 100%;
}

#content.a2b table#troops tr,
div.a2b table#troops tr {
	display: grid;
	grid-template-columns: repeat(4, minmax(110px, 1fr));
	gap: 6px 10px;
	width: 100%;
	align-items: stretch;
}

#content.a2b table#troops td,
div.a2b table#troops td {
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	column-gap: 5px;
	row-gap: 0;
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	padding: 8px 6px !important;
	font-size: 11px !important;
	white-space: nowrap;
	vertical-align: middle !important;
	text-align: right !important;
	box-sizing: border-box !important;
	overflow: visible;
	background: transparent !important;
	position: relative;
}

#content.a2b table#troops td.large,
#content.a2b table#troops td.regular,
#content.a2b table#troops td.small,
#content.a2b table#troops td.column-first,
#content.a2b table#troops td.column-last,
div.a2b table#troops td.large,
div.a2b table#troops td.regular,
div.a2b table#troops td.small,
div.a2b table#troops td.column-first,
div.a2b table#troops td.column-last {
	width: auto !important;
	max-width: none !important;
	padding: 8px 6px !important;
}

#content.a2b table#troops td.line-first,
div.a2b table#troops td.line-first {
	padding-top: 10px !important;
}

#content.a2b table#troops td.line-last,
div.a2b table#troops td.line-last {
	padding-bottom: 10px !important;
}

/* Icon + input + avail on one row (RTL: icon near start of cell) */
#content.a2b table#troops img.unit,
div.a2b table#troops img.unit {
	display: inline-block;
	vertical-align: middle !important;
	position: static !important;
	bottom: auto !important;
	margin: 0 0 0 4px !important;
	flex: 0 0 auto;
	order: 0;
}

#content.a2b table#troops input.text,
div.a2b table#troops input.text {
	display: inline-block;
	position: static !important;
	width: 56px !important;
	min-width: 48px;
	max-width: 64px;
	height: 24px !important;
	margin: 0 !important;
	padding: 2px 4px !important;
	box-sizing: border-box !important;
	color: #222 !important;
	background: #fff !important;
	border: 1px solid #999 !important;
	border-radius: 2px;
	text-align: center;
	vertical-align: middle !important;
	flex: 0 0 auto;
	order: 0;
	font-size: 11px;
	z-index: auto;
}

#content.a2b table#troops input.disabled,
div.a2b table#troops input.disabled {
	background-color: #EEE !important;
	border-color: #AAA !important;
	color: #888 !important;
}

/*
 * Available count beside input ? classic Travian row:
 * [icon] [input] [/ avail]
 * Do NOT put avail on its own flex row (order/100%) ? that stacked
 * green counts on top of black input values (looked like overlapping ads/slots).
 */
#content.a2b table#troops .a2b-troop-avail,
div.a2b table#troops .a2b-troop-avail {
	display: inline-block !important;
	position: static !important;
	flex: 0 1 auto !important;
	order: 0 !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 2px 0 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
	overflow: visible !important;
	line-height: 24px;
	direction: ltr;
	unicode-bidi: isolate;
	text-align: left;
	font-weight: 600;
	font-size: 11px;
	color: #228B22;
	vertical-align: middle;
	z-index: auto;
}

#content.a2b table#troops .a2b-troop-avail a,
div.a2b table#troops .a2b-troop-avail a {
	color: #228B22 !important;
	font-weight: 600;
	vertical-align: middle;
	position: static !important;
}

#content.a2b table#troops .a2b-troop-avail.none,
div.a2b table#troops .a2b-troop-avail.none,
#content.a2b table#troops span.none,
div.a2b table#troops span.none {
	color: #666 !important;
	font-weight: 600;
	vertical-align: middle;
	position: static !important;
}

/* Destination ? light form panel (not darkGray slab) */
#content.a2b .destination,
#content.a2b .a2b-dest-panel,
div.a2b .destination,
div.a2b .a2b-dest-panel {
	float: none !important;
	clear: both;
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 12px !important;
	padding: 12px 14px !important;
	line-height: 1.6;
	box-sizing: border-box;
	border: 1px solid #C0C0C0;
	background: #E7E7E7;
	border-radius: 2px;
	white-space: normal;
}

#content.a2b .a2b-send-meta,
div.a2b .a2b-send-meta {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 10px;
	align-items: stretch;
	margin: 0 0 12px;
	clear: both;
	width: 100%;
	box-sizing: border-box;
}

#content.a2b .a2b-send-meta .destination,
#content.a2b .a2b-send-meta .a2b-dest-panel,
#content.a2b .a2b-send-meta .option-panel,
div.a2b .a2b-send-meta .destination,
div.a2b .a2b-send-meta .a2b-dest-panel,
div.a2b .a2b-send-meta .option-panel {
	margin: 0 !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	height: auto;
	box-sizing: border-box;
}

@media (max-width: 520px) {
	#content.a2b .a2b-send-meta,
	div.a2b .a2b-send-meta {
		grid-template-columns: 1fr !important;
	}
}

div.a2b .destination .boxes,
div.a2b .destination .boxes.boxesColor.darkGray,
div.a2b .destination .boxes.boxesColor.darkgray {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	background: transparent !important;
	background-color: transparent !important;
	border-radius: 0;
	min-height: 0;
}

div.a2b .destination .boxes-tl,
div.a2b .destination .boxes-tr,
div.a2b .destination .boxes-tc,
div.a2b .destination .boxes-ml,
div.a2b .destination .boxes-mr,
div.a2b .destination .boxes-mc,
div.a2b .destination .boxes-bl,
div.a2b .destination .boxes-br,
div.a2b .destination .boxes-bc {
	display: none !important;
}

div.a2b .destination .boxes-contents {
	padding: 0 !important;
	color: #222 !important;
	background: transparent !important;
	white-space: normal;
	width: auto !important;
}

#content.a2b .a2b-dest-row,
div.a2b .a2b-dest-row {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 8px 10px;
	margin: 0 0 10px;
}

#content.a2b .a2b-dest-row.a2b-dest-coords,
div.a2b .a2b-dest-row.a2b-dest-coords {
	flex-wrap: wrap;
}

#content.a2b .a2b-dest-row:last-child,
div.a2b .a2b-dest-row:last-child {
	margin-bottom: 0;
}

#content.a2b .a2b-dest-label,
#content.a2b .destination span,
#content.a2b .destination label,
div.a2b .a2b-dest-label,
div.a2b .destination span,
div.a2b .destination label,
div.a2b .destination .a2b-dest-label {
	color: #222 !important;
	font-weight: 600;
	margin: 0;
	white-space: nowrap;
}

#content.a2b .destination input.text,
#content.a2b .a2b-dest-panel input.text,
div.a2b .destination input.text,
div.a2b .a2b-dest-panel input.text {
	box-sizing: border-box;
	height: 28px;
	padding: 3px 8px;
	color: #222 !important;
	background: #fff !important;
	border: 1px solid #999;
	border-radius: 2px;
	font-family: inherit;
	font-size: 12px;
}

#content.a2b .destination input.text.village,
#content.a2b #enterVillageName,
div.a2b .destination input.text.village,
div.a2b #enterVillageName {
	flex: 1 1 120px;
	width: auto !important;
	min-width: 100px;
	max-width: 100%;
}

#content.a2b .destination table.compact,
div.a2b .destination table.compact {
	margin: 0;
	width: 100%;
}

#content.a2b .destination .coordinatesInput,
#content.a2b .a2b-dest-coords .coordinatesInput,
div.a2b .destination .coordinatesInput,
div.a2b .a2b-dest-coords .coordinatesInput {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 18px;
	float: none !important;
	margin: 0;
}

#content.a2b .destination .coordinatesInput .xCoord,
#content.a2b .destination .coordinatesInput .yCoord,
div.a2b .destination .coordinatesInput .xCoord,
div.a2b .destination .coordinatesInput .yCoord {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	direction: ltr;
	unicode-bidi: isolate;
}

#content.a2b .destination .coordinatesInput label,
div.a2b .destination .coordinatesInput label {
	margin: 0 !important;
	font-weight: 600;
	direction: ltr;
	unicode-bidi: isolate;
}

/* Keep X:/Y: LTR so colon is not flipped in RTL */
#content.a2b .destination .xCoord,
#content.a2b .destination .yCoord,
div.a2b .destination .xCoord,
div.a2b .destination .yCoord {
	direction: ltr !important;
	unicode-bidi: isolate;
}

#content.a2b .destination .xCoord label,
#content.a2b .destination .yCoord label,
div.a2b .destination .xCoord label,
div.a2b .destination .yCoord label {
	direction: ltr !important;
	unicode-bidi: isolate;
	font-weight: 700;
	color: #333 !important;
}

#content.a2b .destination .coordColon,
div.a2b .destination .coordColon {
	unicode-bidi: isolate;
}

#content.a2b .destination .coordinatesInput input.text,
div.a2b .destination .coordinatesInput input.text {
	width: 56px !important;
	max-width: 56px !important;
	text-align: center;
}

#content.a2b .option-panel,
div.a2b .option-panel {
	float: none !important;
	clear: both;
	border: 1px solid #C0C0C0;
	background: #E7E7E7;
	padding: 10px 14px;
	margin: 0 0 14px;
	border-radius: 2px;
}

#content.a2b .option-panel .option,
div.a2b .option-panel .option {
	float: none !important;
	width: auto !important;
	line-height: 1.9;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 6px;
}

#content.a2b .option-panel .option label,
div.a2b .option-panel .option label {
	display: flex !important;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	line-height: 1.6;
	color: #222 !important;
	font-weight: 500;
	cursor: pointer;
	padding: 4px 0;
	position: static !important;
}

#content.a2b .option-panel .option input.radio,
div.a2b .option-panel .option input.radio {
	margin: 0 !important;
	position: static !important;
	top: auto !important;
	flex: 0 0 auto;
	vertical-align: middle;
}

#content.a2b .a2b-actions,
div.a2b .a2b-actions {
	clear: both;
	display: block;
	margin: 2px 0 14px;
	padding-top: 2px;
	text-align: right;
}

#content.a2b .a2b-actions #btn_ok,
div.a2b .a2b-actions #btn_ok {
	margin: 0;
	float: none;
}

div.a2b table#short_info {
	background: #E7E7E7 !important;
	border: 1px solid #C0C0C0;
	border-radius: 2px;
}

div.a2b table.troop_details tbody.cata th,
div.a2b table.troop_details tbody.cata td,
div.a2b table.troop_details tbody.infos th,
div.a2b table.troop_details tbody.infos td,
div.a2b table.troop_details tbody.options th,
div.a2b table.troop_details tbody.options td {
	background: #E7E7E7 !important;
	color: #222 !important;
}

div.a2b .catapult-target-panel {
	border: 1px solid #C0C0C0;
	background: #F0F0F0;
	padding: 10px 12px;
	margin-top: 4px;
	border-radius: 2px;
	line-height: 1.8;
}

div.a2b .catapult-target-panel select.catapult-target-select,
div.a2b table.troop_details tbody.cata select.dropdown {
	display: inline-block;
	min-width: 190px;
	max-width: 100%;
	margin: 4px 0 4px 6px;
	padding: 4px 6px;
	color: #222 !important;
	background: #fff !important;
	border: 1px solid #999;
	border-radius: 2px;
	font-family: inherit;
	font-size: 12px;
	vertical-align: middle;
}

div.a2b .catapult-target-note {
	margin: 6px 0 4px;
	padding: 6px 8px;
	background: #FFF8DC;
	border: 1px solid #D4B84A;
	border-radius: 2px;
	color: #5a4a00 !important;
	font-size: 11px;
	line-height: 1.5;
}

div.a2b span.info {
	display: block;
	margin-top: 6px;
	color: #555 !important;
	font-size: 11px;
}

div.a2b p.error {
	color: #c00;
	font-weight: 600;
}

/* --------------------------------------------------------------------------
   Admin online player profile / edit (onlinerep.php?p=Users&uid=?)
   Cream / forest / Vazirmatn ? same pattern as Mass / Mssg / conf
   -------------------------------------------------------------------------- */
#content.statistics .onlineUserWrap {
	margin: 0 0 16px;
	direction: rtl;
	text-align: right;
}

#content.statistics .onlineUserForm {
	margin: 0 0 14px;
}

#content.statistics table.onlineUserTable {
	max-width: 720px;
	width: 100%;
	margin: 0 auto 12px;
}

#content.statistics table.onlineUserTable td.massLabel {
	width: 28%;
	text-align: right;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	font-weight: 600;
	color: #2d4a32;
	vertical-align: middle;
}

#content.statistics table.onlineUserTable td.massField {
	text-align: right;
	vertical-align: middle;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	color: #1a2418;
}

#content.statistics table.onlineUserTable td.massLabel.onlineMedalHead {
	text-align: center;
	width: auto;
}

#content.statistics textarea.onlineUserTextarea {
	display: block;
	width: 96%;
	max-width: 520px;
	min-height: 140px;
	margin: 0;
	text-align: right;
	direction: rtl;
}

#content.statistics .onlineUserDesc {
	max-height: 220px;
	overflow: auto;
	padding: 6px 8px;
	line-height: 1.7;
	text-align: right;
	direction: rtl;
	white-space: pre-wrap;
	word-wrap: break-word;
}

#content.statistics .onlineUserActions {
	text-align: center;
	line-height: 2;
}

#content.statistics .onlineUserActions a {
	display: inline-block;
	margin: 0 8px;
	color: #2d4a32;
	font-weight: 700;
	text-decoration: none;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

#content.statistics .onlineUserActions a:hover {
	text-decoration: underline;
}

#content.statistics a.onlineUserBack {
	display: inline-block;
	margin-right: 12px;
	color: #8a1f1f;
	font-weight: 700;
	text-decoration: none;
	vertical-align: middle;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

#content.statistics a.onlineUserBack:hover {
	text-decoration: underline;
}

#content.statistics table.onlineMedalTable {
	margin-top: 4px;
}

/* --------------------------------------------------------------------------
   Traviano loading overlay (slow map / oasis / dorf / install)
   -------------------------------------------------------------------------- */
.traviano-loading {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		radial-gradient(ellipse 70% 50% at 50% 40%, rgba(247, 243, 234, 0.72), rgba(30, 50, 36, 0.55));
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.18s ease, visibility 0.18s ease;
	direction: rtl;
	font-family: "Vazirmatn", Tahoma, sans-serif;
}

.traviano-loading.is-visible,
html.traviano-loading-active .traviano-loading {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

.traviano-loading-card {
	min-width: 200px;
	max-width: 90vw;
	padding: 22px 28px;
	border-radius: 14px;
	background: linear-gradient(180deg, #fffdf8 0%, #f3ebe0 100%);
	border: 1px solid rgba(45, 74, 50, 0.22);
	box-shadow: 0 16px 40px rgba(20, 32, 18, 0.28);
	text-align: center;
}

.traviano-loading-spinner {
	width: 36px;
	height: 36px;
	margin: 0 auto 12px;
	border-radius: 50%;
	border: 3px solid rgba(45, 74, 50, 0.18);
	border-top-color: #b8892d;
	border-right-color: #2d4a32;
	animation: travianoSpin 0.75s linear infinite;
}

.traviano-loading-text {
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	color: #1e3224;
	letter-spacing: 0;
}

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

/* Player ads ? one banner slot, never stacked */
#content.plus .adsPlayerWrap,
#content.statistics .adsPlayerWrap {
	direction: rtl;
	text-align: center;
	margin: 12px auto 18px;
	max-width: 520px;
}

#content.plus .adsBannerSlot,
#content.statistics .adsBannerSlot,
.adsBannerSlot {
	position: relative;
	display: block;
	width: 100%;
	max-width: 468px;
	min-height: 60px;
	margin: 0 auto 12px;
	overflow: hidden;
	background: #f7f3ea;
	border: 1px solid rgba(45, 74, 50, 0.18);
	border-radius: 8px;
}

#content.plus .adsBannerSlot img,
#content.statistics .adsBannerSlot img,
.adsBannerSlot img {
	display: block;
	position: static !important;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

#content.plus .adsBannerSlot .adsBannerItem,
#content.statistics .adsBannerSlot .adsBannerItem,
.adsBannerSlot .adsBannerItem {
	display: none;
	position: static !important;
}

#content.plus .adsBannerSlot .adsBannerItem.is-active,
#content.statistics .adsBannerSlot .adsBannerItem.is-active,
.adsBannerSlot .adsBannerItem.is-active {
	display: block;
}

#content.statistics .adsListTable .adsThumb {
	max-width: 160px;
	max-height: 60px;
	display: block;
	margin: 4px auto;
	border-radius: 4px;
}

#content.statistics .adsListTable td {
	vertical-align: middle;
}

/* Login / logout promo news ? stack, never absolute overlap */
body.login #side_info,
body.logout #side_info {
	position: relative !important;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: stretch;
}

body.login #side_info .news,
body.logout #side_info .news {
	position: static !important;
	margin: 0 !important;
	padding: 14px 12px !important;
	line-height: 1.6 !important;
	background: rgba(255, 252, 246, 0.94);
	border: 1px solid rgba(45, 74, 50, 0.16);
	border-radius: 10px;
	box-sizing: border-box;
	width: auto !important;
	max-width: 100%;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

/* Admin update.php ? feature list + log table */
#content.statistics .updateFeatures ul {
	margin: 0;
	padding: 0 18px 0 0;
	text-align: right;
	list-style: disc;
}
#content.statistics .updateFeatures li {
	margin: 4px 0;
	line-height: 1.6;
}
#content.statistics table.updateLogTable {
	max-width: 100%;
}
#content.statistics .updateLogSum {
	font-size: 12px;
	max-width: 220px;
	word-wrap: break-word;
}
#content.statistics form.updateLogDel {
	display: inline;
	margin: 0;
}
#content.statistics .updateForm input[type="file"] {
	max-width: 100%;
}

/* Player profile edit (spieler.php?s=1) */
body.spieler #content.player .titleInHeader,
body.spieler #content.player h4.round {
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

body.spieler #content.player .mssgForm.profileEditForm {
	margin: 0 0 14px;
}

body.spieler #content.player table.mssgTable.profileEditTable,
body.spieler #content.player table.mssgTable.profileVillageTable {
	width: 100%;
	max-width: 720px;
	margin: 0 auto 12px;
	border-collapse: separate;
	border-spacing: 1px;
	background: transparent !important;
	border: 0 !important;
}

body.spieler #content.player table.mssgTable td.rbg {
	text-align: center;
	font-weight: 700;
	padding: 8px 10px;
	color: #1e3224;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
}

body.spieler #content.player table.mssgTable th.massLabel,
body.spieler #content.player table.mssgTable td.massField,
body.spieler #content.player table.mssgTable th {
	text-align: right;
	padding: 10px 12px;
	vertical-align: middle;
	background: linear-gradient(180deg, rgba(255,252,246,0.96), rgba(241,235,224,0.9));
	border: 1px solid rgba(45, 74, 50, 0.14);
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

body.spieler #content.player .fm.massInput,
body.spieler #content.player select.fm.massInput {
	min-width: 88px;
	margin-left: 6px;
	padding: 6px 8px;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
}

body.spieler #content.player textarea.mssgTextarea.editDescription {
	display: block;
	width: 96%;
	max-width: 720px;
	min-height: 120px;
	margin: 8px auto 12px;
	padding: 10px 12px;
	box-sizing: border-box;
	font-family: "Vazirmatn", Tahoma, sans-serif !important;
	line-height: 1.65;
	text-align: center;
	border: 1px solid rgba(45, 74, 50, 0.28);
	border-radius: 6px;
	background: #fffefb;
	resize: vertical;
}

body.spieler #content.player .mssgActions {
	text-align: center;
	margin: 8px 0 16px;
}

body.spieler #content.player table#villages thead th {
	text-align: center;
	font-weight: 700;
}
