/*

License: GPLv2
	<http://www.gnu.org/licenses/gpl-2.0.html>

*/

@import url(./battle-log.css?v11);

.battle {
	position: absolute;
	text-align: left;
	top: 9px;
	left: -1px;
	border: 1px solid #AAAAAA;
	background: #CFD5DA;
	color: black;
	width: 640px;
	height: 360px;
	overflow: hidden;

	font-family: Verdana, sans-serif;
	font-size: 10pt;
}
.backdrop {
	width: 700px;
	height: 500px;
	position: absolute;
	top: -90px;
	left: -50px;
	background: transparent url(../fx/bg-beach.png) no-repeat scroll left top;
	opacity: 0.8;
}
.battle a {
	color: #2277FF;
}
.battle a:hover {
	color: #1155AA;
}
.innerbattle {
	position: relative;
	width: 640px;
	height: 360px;
}
.battle-log-add {
	position: absolute;
	text-align: left;
	border: 1px solid #AAAAAA;
	background: #EEF2F5;
	color: black;
	top: 369px;
	left: 640px;
	right: -1px;

	font-family: Verdana, sans-serif;
	font-size: 10pt;
}
.battle-log {
	position: absolute;
	text-align: left;
	border: 1px solid #AAAAAA;
	background: #EEF2F5;
	color: black;
	top: 9px;
	left: 640px;
	right: -1px;
	height: 360px;

	font-family: Verdana, sans-serif;
	font-size: 10pt;

	overflow: auto;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	word-wrap: break-word;
}
.dark .battle, .dark .battle-log, .dark .battle-log-add {
	border-color: #5A5A5A;
}
.battle-log-inline {
	position: static;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	height: auto;
	width: auto;
	overflow-y: auto;
}
.battle-log .inner {
	padding: 4px 8px 0px 8px;
}
.battle-log .inner-preempt {
	padding: 0 8px 4px 8px;
}
.battle-log .inner-after {
	margin-top: 0.5em;
}

.playbutton {
	position: absolute;
	display: block;
	top: 160px;
	left: 120px;
	right: 120px;
	text-align: center;
}
.playbutton1, .playbutton2 {
	position: absolute;
	display: block;
	top: 190px;
	left: 100px;
	z-index: 100;
}
.playbutton2 {
	top: 130px;
	left: 300px;
}
.playbutton button,
.playbutton1 button,
.playbutton2 button {
	font-size: 16pt;
}

.background {
	position: absolute;
	display: none;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.statbar {
	position: absolute;
	display: none;
	width: 154px;
	min-height: 40px;
	padding: 2px 4px;
}
.statbar strong {
	margin: 0 -15px;
	display: block;
	text-align: center;
	color: #222222;
	text-shadow: #FFFFFF 1px 1px 0, #FFFFFF 1px -1px 0, #FFFFFF -1px 1px 0, #FFFFFF -1px -1px 0;
}
.statbar strong small {
	font-weight: normal;
}
.statbar .hpbar {
	position: relative;
	border: 1px solid #777777;
	background: #FCFEFF;
	padding: 1px;
	height: 8px;
	margin: 0 0 0 0;
	width: 151px;
	border-radius: 4px;
}

/* The declaration order of these hp* classes is significant. */

.statbar .hpbar .hp {
	height: 4px;
	border-top: 2px solid #00dd60;
	background: #00bb51;
	border-bottom: 2px solid #007734;
	border-right: 1px solid #007734;
	border-radius: 3px;
}
.statbar .hpbar .hp-yellow {
	border-top-color: #f8e379;
	background-color: #f5d538;
	border-bottom-color: #be9f0a;
	border-right-color: #be9f0a;
}
.statbar .hpbar .hp-red {
	border-top-color: #f37f67;
	background-color: #ee4928;
	border-bottom-color: #a3260d;
	border-right-color: #a3260d;
}

/* The declaration order of these prevhp* classes is significant. */

.statbar .hpbar .prevhp {
	background: #BBEECC;
	height: 8px;
	border-radius: 3px;
}
.statbar .hpbar .prevhp-yellow {
	background-color: #fcf4ca;
}
.statbar .hpbar .prevhp-red {
	background-color: #facec5;
}

/****************/

.statbar .hpbar .hptext {
	position: absolute;
	background: #777777;
	color: #EEEEEE;
	text-shadow: #000000 0 1px 0;
	font-size: 9px;
	width: 32px;
	height: 12px;
	top: -1px;
	text-align: center;
}
.statbar .hpbar .hptextborder {
	position: absolute;
	background: transparent;
	border-top: 1px solid #777777;
	border-bottom: 1px solid #777777;
	width: 4px;
	top: -1px;
	height: 10px;
}
.rstatbar .hpbar .hptext {
	right: -32px;
	border-radius: 0 4px 4px 0;
}
.lstatbar .hpbar .hptext {
	left: -32px;
	border-radius: 4px 0 0 4px;
}
.rstatbar .hpbar .hptextborder {
	right: -3px;
}
.lstatbar .hpbar .hptextborder {
	left: -3px;
}
.statbar .status {
	min-height: 10px;
	font-size: 7pt;
}
.statbar .status img {
	vertical-align: top;
	top: -2px;
	position: relative;
}
.statbar span {
	padding: 0px 1px;
	border: 1px solid #FF4400;
	border-radius: 3px;
}
.statbar span.brn,
.statbar span.psn,
.statbar span.slp,
.statbar span.par,
.statbar span.frz {
	padding: 1px 2px;
	border: 0;
	border-radius: 3px;
}
.statbar span.brn {
	background: #EE5533;
	color: #FFFFFF;
}
.statbar span.psn {
	background: #A4009A;
	color: #FFFFFF;
}
.statbar span.par {
	background: #9AA400;
	color: #FFFFFF;
}
.statbar span.slp {
	background: #AA77AA;
	color: #FFFFFF;
}
.statbar span.frz {
	background: #009AA4;
	color: #FFFFFF;
}
.statbar span.bad {
	background: #FFE5E0;
	color: #FF4400;
	border-color: #FF4400;
}
.statbar span.good {
	background: #E5FFE0;
	color: #33AA00;
	border-color: #33AA00;
}
.statbar span.neutral {
	background: #F0F0F0;
	color: #555555;
	border-color: #555555;
}
.leftbar {
	position: absolute;
	top: 0;
	left: 0;
	height: 450px;
	width: 100px;
	background-color: #CCCCCC;
	background-color: rgba(255,255,255,0.5);
	border-right: 1px solid rgba(215,215,215,0.5);
	color: #777777;
}
.rightbar {
	position: absolute;
	top: 0;
	right: 0;
	height: 450px;
	width: 100px;
	background-color: #CCCCCC;
	background-color: rgba(255,255,255,0.5);
	border-left: 1px solid rgba(215,215,215,0.5);
	color: #777777;
}
.trainer {
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 75px;
}

.trainer-near {
	bottom: 75px;
}
.trainer-far {
	bottom: 190px;
}
.trainer-near2 {
	bottom: 232px;
}
.trainer-far2 {
	bottom: 65px;
}

.trainer strong {
	display: block;
	font-size: 8pt;
	margin-bottom: 2px;
	word-wrap: break-word;
}
.trainer div {
	width: 86px;
	height: 90px;
	opacity: .8;
	margin: 0 auto;
	background: transparent none no-repeat scroll center top;
}
.trainer div.teamicons {
	width: 100px;
	height: 30px;
	margin: 0 0 0 2px;
}
.teamicons span {
	float: left;
}
.leftbar .trainer div.trainersprite,
.leftbar .teamicons span {
	-moz-transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	-o-transform: scaleX(-1);
	-ms-transform: scaleX(-1);
	transform: scaleX(-1);
}
.trainersprite {
	max-width: 80px;
	max-height: 80px;
}
.turn {
	position: absolute;
	display: block;
	top: 10px;
	left: 110px;
	font-size: 13pt;
	font-weight: bold;
	margin: 0;
	padding: 2px 8px;
	border: 2px solid #332200;
	border-radius: 6px;
	color: #332200;
	background: #FCFAF2;
}
.messagebar {
	position: absolute;
	display: none;
	bottom: 10px;
	left: 110px;
	right: 110px;
	color: #CCCCCC;
	background: #222222;
	background: rgba(0,0,0,0.75);
	border-radius: 6px;
	padding: 4px 6px 0 6px;
	overflow: hidden;
}
.messagebar strong {
	color: #ffffff;
	font-size: 12pt;
}
.messagebar small {
	font-size: 8pt;
}
.messagebar p {
	display: none;
	margin: 0;
	padding: 0;
}
.weather {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	text-shadow: #FFFFFF 1px 1px 0, #FFFFFF 1px -1px 0, #FFFFFF -1px 1px 0, #FFFFFF -1px -1px 0;
	color: black;
}
.weather em {
	display: block;
	margin: 24px 0 0 115px;
	font-size: 12pt;
}
.weather em small {
	font-style: normal;
}
.sunweather,
.sunnydayweather,
.desolatelandweather {
	background: #FFEEBB url(../fx/weather-sunnyday.jpg) no-repeat scroll left top;
	color: #664411;
}
.rainweather,
.raindanceweather,
.primordialseaweather {
	background: #99BBFF url(../fx/weather-raindance.jpg) no-repeat scroll left top;
	color: #0044BB;
}
.sandstormweather {
	background: #E6E0AC url(../fx/weather-sandstorm.png) no-repeat scroll left top;
	color: #554433;
}
.snowscapeweather,
.hailweather {
	background: #AADDEE url(../fx/weather-hail.png) no-repeat scroll left top;
	color: #114455;
}
.deltastreamweather {
	background: #AAAAAA url(../fx/weather-strongwind.png) no-repeat scroll left top;
	color: #666666;
}
.mistyterrainweather {
	background: #EEAACC url(../fx/weather-mistyterrain.png) no-repeat scroll left top;
	color: #551144;
}
.electricterrainweather {
	background: #EEEEAA url(../fx/weather-electricterrain.png) no-repeat scroll left top;
	color: #444411;
}
.grassyterrainweather {
	background: #CCEEAA url(../fx/weather-grassyterrain.png) no-repeat scroll left top;
	color: #335511;
}
.psychicterrainweather {
	background: #CCAAEE url(../fx/weather-psychicterrain.png) no-repeat scroll left top;
	color: #441155;
}
.gravityweather {
	background: #DDAAEE url(../fx/weather-gravity.png) no-repeat scroll left top;
	color: #661155;
}
.magicroomweather {
	background: #DDAAEE url(../fx/weather-magicroom.png) no-repeat scroll left top;
	color: #661155;
}
.trickroomweather {
	background: #DDAAEE url(../fx/weather-trickroom.png) no-repeat scroll left top;
	color: #661155;
}
.wonderroomweather {
	background: #DDAAEE url(../fx/weather-wonderroom.png) no-repeat scroll left top;
	color: #661155;
}

.battle .result {
	display: none;
	position: absolute;
	width: 150px;
	text-align: center;
}
.battle .result strong {
	font-weight: bold;
	padding: 1px 3px;
	border-radius: 3px;
}
.battle .badresult strong {
	color: #FFFFFF;
	background: #CC0000;
}
.battle .goodresult strong {
	color: #FFFFFF;
	background: #00CC00;
}
.battle .neutralresult strong {
	color: #FFFFFF;
	background: #999999;
}
.battle .brnresult strong {
	color: #FFFFFF;
	background: #EE5533;
}
.battle .psnresult strong {
	color: #FFFFFF;
	background: #A4009A;
}
.battle .slpresult strong {
	color: #FFFFFF;
	background: #AA77AA;
}
.battle .parresult strong {
	color: #FFFFFF;
	background: #9AA400;
}
.battle .frzresult strong {
	color: #FFFFFF;
	background: #009AA4;
}
.battle .abilityresult strong {
	color: #FFFFFF;
	background: #0088AA;
	border-radius: 0;
	padding: 2px 6px;
}
.sidecondition-auroraveil {
	background: #88EEFF;
	border: 1px solid #55BBCC;
	display: none;
	position: absolute;
}
.sidecondition-reflect {
	background: #EEEEEE;
	border: 1px solid #888888;
	display: none;
	position: absolute;
}
.sidecondition-lightscreen {
	background: #CCCC00;
	border: 1px solid #AAAA00;
	display: none;
	position: absolute;
}
.sidecondition-safeguard {
	background: #DD88DD;
	border: 1px solid #AA66AA;
	display: none;
	position: absolute;
}
.sidecondition-mist {
	background: #AACCFF;
	border: 1px solid #5577CC;
	display: none;
	position: absolute;
}
.turnstatus-protect {
	background: #DD88DD;
	border: 1px solid #AA66AA;
	display: none;
	position: absolute;
}
.seeking {
	display: block;
	position: absolute;
	top: 0; left: 0; bottom: 0; right: 0;
	background: #CCCCCC;
	color: #000000;
	font-size: 14px;
}
.seeking strong {
	display: block;
	text-align: center;
	padding-top: 180px;
}

#sm2-container {
	position: relative;
}

.swf_timedout#sm2-container embed,
.swf_timedout#sm2-container object,
.swf_timedout#sm2-container audio,
.movieContainer#sm2-container embed,
.movieContainer#sm2-container object,
.movieContainer#sm2-container audio {
	position: absolute;
	height: 27px;
	width: 66px;
	top: -1px;
	left: -1px;
}
.swf_timedout#sm2-container .inner,
.movieContainer#sm2-container .inner {
	visibility: hidden;
}
#sm2-container embed,
#sm2-container object,
#sm2-container audio,
.swf_loaded#sm2-container embed,
.swf_loaded#sm2-container object,
.swf_loaded#sm2-container audio {
	position: absolute;
	height: 27px;
	width: 27px;
	top: -1px;
	left: -87px;
}
#sm2-container .inner,
.swf_loaded#sm2-container .inner {
	visibility: visible;
}

.chooser {
	float: right;
	border: 1px solid #AAAAAA;
	background: #EEF2F5;
	padding: 0 0 0 0;
	height: 25px;
	font-size: 9pt;
	margin: 0 5px 0 0;
}
.leftchooser {
	float: left;
}
.chooser em {
	float: left;
	padding: 5px 6px 0 6px;
	height: 20px;
	border-right: 1px solid #CCCCCC;
	background: #EEEEEE;
	font-weight: normal;
}
.chooser div {
	float: left;
	padding: 3px 2px 0 2px;
}
.chooser button {
	border: 0;
	background: transparent;
	padding: 2px 4px;
	font-size: 9pt;
	font-family: Verdana, sans-serif;
	border-radius: 3px;
	cursor: pointer;
}
.chooser button:hover {
	border: 1px solid #BBBBBB;
	padding: 1px 3px;
	background: #EEEEEE;
}
.chooser button.sel,
.chooser button.sel:hover {
	border: 1px solid #999999;
	padding: 1px 3px;
	background: #DDDDDD;
}


/* .dark .battle {
	background: #222222;
	color: #CCCCCC;
}
.dark .statbar strong {
	color: #AAAAAA;
}
.dark .statbar .hpbar {
	background: #222222;
}
.dark .statbar .hpbar .prevhp {
	background: #446755;
}
.dark .leftbar,
.dark .rightbar {
	background: rgba(0,0,0,0.5);
	color: #CCCCCC;
}
.dark .messagebar {
	background: #444444;
	background: rgba(60,60,60,0.80);
	color: #CCCCCC;
} */
.dark .battle-log {
	background: #333333;
	color: #CCCCCC;
}
.dark .chooser {
	background: #666666;
	color: #CCCCCC;
}
.dark .chooser em {
	background: #777777;
	color: #CCCCCC;
}
.dark .chooser button {
	color: #CCCCCC;
}
.dark .chooser button:hover {
	border: 1px solid #BBBBBB;
	padding: 1px 3px;
	background: #777777;
	color: #EEEEEE;
}
.dark .chooser button.sel,
.dark .chooser button.sel:hover {
	border: 1px solid #CCCCCC;
	padding: 1px 3px;
	background: #999999;
	color: #F3F3F3;
}

.itemicon {
	display: inline-block;
	vertical-align: middle;
	width: 24px;
	height: 24px;
}
.rankicon {
	display: inline-block;
	width: 24px;
	height: 24px;
	margin: -5px 2px -5px 0;
	vertical-align: middle;
	background: transparent url(../sprites/itemicons-sheet.png?v1) no-repeat scroll -216px -504px;
}
.rankicon-champion {
	background-position: -288px -336px;
}
.rankicon-masterball {
	background-position: -96px -408px;
}
.rankicon-ultraball {
	background-position: -216px -768px;
}
.rankicon-greatball {
	background-position: -336px -240px;
}
.rankicon-pokeball {
	background-position: -216px -504px;
}
.trainer > strong {
	display: block;
	max-width: 92px;
	margin: 0 auto;
	line-height: 13px;
	text-align: center;
	overflow-wrap: anywhere;
}
.trainer .rankbadges {
	display: block;
	width: 78px;
	min-height: 34px;
	line-height: 12px;
	margin: 10px auto 3px;
	opacity: 1;
	text-align: center;
	white-space: normal;
}
.trainer .rankbadge {
	--rank-main: #c7513c;
	--rank-light: #fff1e8;
	--rank-dark: #7d2c22;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	width: 78px;
	min-height: 33px;
	font-size: 10px;
	font-weight: bold;
	color: #252525;
	text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.75);
	white-space: normal;
}
.trainer .rankbadge-masterball {
	--rank-main: #8d37c9;
	--rank-light: #f2e5ff;
	--rank-dark: #4e1c76;
}
.trainer .rankbadge-ultraball {
	--rank-main: #d8a200;
	--rank-light: #fff2b5;
	--rank-dark: #765900;
}
.trainer .rankbadge-greatball {
	--rank-main: #2d72c8;
	--rank-light: #e5f1ff;
	--rank-dark: #164373;
}
.trainer .rankbadge-pokeball {
	--rank-main: #d45b37;
	--rank-light: #fff0e7;
	--rank-dark: #80311c;
}
.trainer .rankbadge-champion {
	--rank-main: #c99b23;
	--rank-light: #fff5c8;
	--rank-dark: #6f520d;
}
.trainer .rankbadge-banner {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	box-sizing: border-box;
	width: 70px;
	height: 20px;
	padding: 0 10px;
	border-radius: 2px;
	background:
		linear-gradient(90deg, transparent 0 18px, rgba(255, 255, 255, 0.55) 18px 19px, transparent 19px),
		linear-gradient(180deg, var(--rank-light), #ffffff 48%, color-mix(in srgb, var(--rank-main) 22%, #ffffff));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85), 0 1px 1px rgba(0, 0, 0, 0.25);
}
.trainer .rankbadge-banner:before,
.trainer .rankbadge-banner:after {
	content: "";
	position: absolute;
	top: -1px;
	width: 13px;
	height: 20px;
	background: inherit;
	border-radius: 2px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85), 0 1px 1px rgba(0, 0, 0, 0.22);
}
.trainer .rankbadge-division-iii .rankbadge-banner:before,
.trainer .rankbadge-division-iii .rankbadge-banner:after {
	display: none;
}
.trainer .rankbadge-division-iii .rankbadge-banner {
	width: 66px;
	clip-path: polygon(6px 0, calc(100% - 6px) 0, 100% 50%, calc(100% - 6px) 100%, 6px 100%, 0 50%);
	border-left: 1px solid var(--rank-dark);
	border-right: 1px solid var(--rank-dark);
}
.trainer .rankbadge-division-ii .rankbadge-banner {
	background:
		linear-gradient(90deg, transparent 0 18px, rgba(255, 255, 255, 0.65) 18px 19px, transparent 19px),
		linear-gradient(180deg, #ffffff, var(--rank-light) 42%, color-mix(in srgb, var(--rank-main) 30%, #ffffff));
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.95),
		inset 0 -2px 0 color-mix(in srgb, var(--rank-main) 30%, transparent),
		0 1px 2px rgba(0, 0, 0, 0.28);
}
.trainer .rankbadge-division-ii .rankbadge-banner:before,
.trainer .rankbadge-division-ii .rankbadge-banner:after {
	width: 9px;
	opacity: 0.92;
}
.trainer .rankbadge-division-ii .rankbadge-banner:before {
	left: -5px;
	transform: skewX(-20deg);
}
.trainer .rankbadge-division-ii .rankbadge-banner:after {
	right: -5px;
	transform: skewX(20deg);
}
.trainer .rankbadge-division-i .rankbadge-banner {
	height: 22px;
	background:
		linear-gradient(90deg, transparent 0 18px, rgba(255, 255, 255, 0.8) 18px 19px, transparent 19px),
		linear-gradient(135deg, transparent 0 14%, rgba(255, 255, 255, 0.9) 16%, transparent 29%),
		linear-gradient(180deg, #ffffff, var(--rank-light) 38%, color-mix(in srgb, var(--rank-main) 42%, #ffffff));
	border-top-width: 2px;
	border-bottom-width: 2px;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 1),
		inset 0 -2px 0 color-mix(in srgb, var(--rank-main) 42%, transparent),
		0 1px 3px rgba(0, 0, 0, 0.34);
}
.trainer .rankbadge-division-i .rankbadge-banner:before {
	left: -8px;
	transform: skewX(-30deg);
}
.trainer .rankbadge-division-i .rankbadge-banner:after {
	right: -8px;
	transform: skewX(30deg);
}
.trainer .rankbadge-division-i .rankbadge-banner:before,
.trainer .rankbadge-division-i .rankbadge-banner:after {
	height: 22px;
	border-top-width: 2px;
	border-bottom-width: 2px;
}
.trainer .rankbadge-champion .rankbadge-banner {
	width: 72px;
	height: 22px;
	padding: 0 8px;
	background:
		linear-gradient(90deg, transparent 0 18px, rgba(255, 255, 255, 0.72) 18px 19px, transparent 19px),
		linear-gradient(135deg, transparent 0 13%, rgba(255, 255, 255, 0.95) 15%, transparent 30%),
		linear-gradient(180deg, #fffbe0, #ffffff 38%, #ffd86a 68%, #c99b23);
	border-top-width: 2px;
	border-bottom-width: 2px;
	border-color: #6f520d;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 1),
		inset 0 -2px 0 rgba(111, 82, 13, 0.25),
		0 1px 4px rgba(111, 82, 13, 0.48);
}
.trainer .rankbadge-champion .rankbadge-banner:before,
.trainer .rankbadge-champion .rankbadge-banner:after {
	height: 22px;
	border-top-width: 2px;
	border-bottom-width: 2px;
	border-color: #6f520d;
}
.trainer .rankbadge-champion .rankbadge-banner:before {
	left: -7px;
}
.trainer .rankbadge-champion .rankbadge-banner:after {
	right: -7px;
}
.trainer .rankbadge-banner:before {
	left: -7px;
	transform: skewX(-28deg);
	border-left: 1px solid var(--rank-dark);
	border-top: 1px solid var(--rank-dark);
	border-bottom: 1px solid var(--rank-dark);
}
.trainer .rankbadge-banner:after {
	right: -7px;
	transform: skewX(28deg);
	border-right: 1px solid var(--rank-dark);
	border-top: 1px solid var(--rank-dark);
	border-bottom: 1px solid var(--rank-dark);
}
.trainer .rankbadge-banner {
	border: 1px solid var(--rank-dark);
	border-left: 0;
	border-right: 0;
}
.trainer .rankbadge-iconframe {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 24px;
	width: 24px;
	height: 20px;
}
.trainer .rankbadge-iconframe:before {
	content: "";
	position: absolute;
	left: 6px;
	top: 3px;
	width: 12px;
	height: 12px;
	border: 1px solid color-mix(in srgb, var(--rank-dark) 68%, #ffffff);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.55);
}
.trainer .rankbadge .rankicon {
	position: relative;
	z-index: 2;
	flex: 0 0 auto;
	width: 24px;
	height: 24px;
	margin: -4px 0;
	transform: scale(0.72);
	transform-origin: center;
}
.trainer .rankbadge-division {
	position: relative;
	z-index: 1;
	flex: 0 0 24px;
	line-height: 18px;
	font-size: 13px;
	font-weight: bold;
	font-family: Georgia, "Times New Roman", serif;
	color: var(--rank-dark);
	text-align: center;
	text-shadow: 1px 1px 0 #ffffff;
}
.trainer .rankbadge-division-full {
	font-family: Verdana, sans-serif;
	font-size: 11px;
	letter-spacing: 0;
	min-width: 24px;
	text-transform: none;
}
.trainer .rankbadge-elo {
	line-height: 11px;
	font-size: 8px;
	font-weight: normal;
	color: #444;
}
.trainer .champions-name {
	display: inline-block;
	font-weight: bold;
}
.champions-name-champion {
	color: #7d5700;
}
.champions-name-masterball {
	color: #8d37c9;
}
.champions-name-ultraball {
	color: #6f5600;
}
.champions-name-greatball {
	color: #2d72c8;
}
.champions-name-pokeball {
	color: #c7513c;
}
.chat .rankicon,
.userlist .rankicon {
	transform: scale(0.88);
	transform-origin: center;
}
.ladder .rankicon {
	margin: -3px 4px -3px 0;
	transform: none;
}
.battle-log .champions-rank-adjustment,
.battle-log-add .champions-rank-adjustment {
	margin: 2px 0;
	line-height: 16px;
}
.battle-log .champions-rank-adjustment .rankicon,
.battle-log-add .champions-rank-adjustment .rankicon {
	margin: -4px 2px -4px 2px;
	transform: scale(0.82);
	transform-origin: center;
}
.battle-log .champions-rank-adjustment .champions-rank-title,
.battle-log-add .champions-rank-adjustment .champions-rank-title {
	white-space: nowrap;
}
.battle-log .champions-rank-adjustment small,
.battle-log-add .champions-rank-adjustment small {
	color: #555555;
}
.battle-log .champions-rank-adjustment small.good,
.battle-log-add .champions-rank-adjustment small.good {
	color: #1f8f3a;
	font-weight: bold;
}
.battle-log .champions-rank-adjustment small.bad,
.battle-log-add .champions-rank-adjustment small.bad {
	color: #c0342b;
	font-weight: bold;
}
.battle-log .champions-rank-adjustment small.neutral,
.battle-log-add .champions-rank-adjustment small.neutral {
	color: #666666;
}
.picon {
	display: inline-block;
	vertical-align: middle;
	width: 40px;
	height: 30px;
}
.trainer .picon {
	margin: 0 -4px;
}
.pixelated, .itemicon, .rankicon, .picon, .trainersprite {
	image-rendering: -moz-crisp-edges;
	image-rendering: pixelated;
	-ms-interpolation-mode: nearest-neighbor;
}
@media (-webkit-min-device-pixel-ratio: 1.05), (min-resolution: 1.05dppx) {
	.pixelated, .itemicon, .rankicon, .picon, .trainersprite {
		image-rendering: auto;
	}
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	.pixelated, .itemicon, .picon, .trainersprite {
		image-rendering: pixelated;
	}
}

.effectiveness-icon {
	font-family: monospace;
	font-size: 13px;
	letter-spacing: 1px;
}

/*********************************************************
 * Tooltips
 *********************************************************/

#tooltipwrapper {
	position: absolute;
	top: 400px;
	left: 100px;
	text-align: left;
	color: black;
	pointer-events: none;
}
#tooltipwrapper .tooltipinner {
	position: relative;
}
#tooltipwrapper .tooltip {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 300px;
	border: 1px solid #888888;
	background: #EEEEEE;
	background: rgba(240,240,240,.9);
	border-radius: 5px;
	z-index: 50;
}
#tooltipwrapper .tooltip h2 {
	padding: 2px 4px;
	margin: 0;
	border-bottom: 1px solid #888888;
	font-size: 10pt;
	color: black;
}
#tooltipwrapper .tooltip h2 small {
	font-weight: normal;
}
#tooltipwrapper .tooltip p {
	padding: 2px 4px;
	margin: 0;
	font-size: 9pt;
}
#tooltipwrapper .tooltip p small {
	font-size: 8pt;
}
#tooltipwrapper .tooltip p.tooltip-section {
	border-top: 1px solid #888888;
}
#tooltipwrapper .tooltip .textaligned-typeicons img {
	vertical-align: text-bottom;
}
#tooltipwrapper.tooltip-locked {
	pointer-events: auto;
}
#tooltipwrapper.tooltip-locked .tooltip {
	border: 2px solid #444444;
	background: #DEDEDE;
}
#tooltipwrapper .tooltip-locking .tooltip {
	position: absolute;
	box-sizing: border-box;
}

.tooltip-locking-click .tooltip::before, .tooltip-locking-click .tooltip::after,
.tooltip-locking-tap .tooltip::before, .tooltip-locking-tap .tooltip::after {
	content: "";
	position: absolute;
	border: 2px solid transparent;
	box-sizing: border-box;
	border-radius: 5px;
	animation-duration: 500ms;
	animation-fill-mode: forwards;
	animation-delay: 75ms;
}

.tooltip-locking-click .tooltip::after, .tooltip-locking-click .tooltip::before {
	animation-duration: 700ms;
}

.tooltip-locking-click .tooltip::after, .tooltip-locking-tap .tooltip::after {
	bottom: -2px;
	left: -2px;
	animation-name: tooltip-locking-top-left;
}

.tooltip-locking-click .tooltip::before, .tooltip-locking-tap .tooltip::before {
	top: -2px;
	right: -2px;
	animation-name: tooltip-locking-bottom-right;
}

@keyframes tooltip-locking-top-left {
	0% {
		width: 0;
		height: 0;
		border-left: 2px solid #444444;
	}
	25% {
		width: 0;
		height: calc(100% + 4px);
		border-left: 2px solid #444444;
		border-top: 2px solid #444444;
	}
	50% {
		width: calc(100% + 4px);
		height: calc(100% + 4px);
		border-left: 2px solid #444444;
		border-top: 2px solid #444444;
	}
	
	100% {
		width: calc(100% + 4px);
		height: calc(100% + 4px);
		border-left: 2px solid #444444;
		border-top: 2px solid #444444;
	}
}

@keyframes tooltip-locking-bottom-right {
	0% {
		width: 0;
		height: 0;
		opacity: 0;
	}
	
	50% {
		width: 0;
		height: 0;
		border: 0;
		border-right: 2px solid #444444;
		opacity: 0;
	}
	50.1% {
		opacity: 1;
	}
	75% {
		width: 0;
		height: calc(100% + 4px);
		border: 2px solid transparent;
		border-right: 2px solid #444444;
		border-bottom: 2px solid #444444;
	}
	
	100% {
		height: calc(100% + 4px);
		width: calc(100% + 4px);
		border-right: 2px solid #444444;
		border-bottom: 2px solid #444444;
	}
}
