﻿@charset "utf-8";
/**
 * 公共样式
 Download by http://www.codefans.net*/
body, ul, ol, li, p, h1, h2, h3, h4, h5, h6, form, fieldset, table, th, td, img, div {
	margin: 0px;
	padding: 0px;
	border: 0px;
}
html, body {
	height: 100%;
	touch-action: none;
	overscroll-behavior: contain;
}
body {
	background: #ffffff;
	color: #000000;
	font-size: 14px;
	font-family: 'Arial Unicode MS', Verdana, Arial, Helvetica, sans-serif;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
ul, ol {
	list-style-type: none;
}
input, textarea, select {
	vertical-align: middle;
	font-size: 14px;
	padding: 2px;
	font-family: 'Arial Unicode MS', Verdana, Arial, Helvetica, sans-serif;
}
a, a:hover {
	text-decoration: none;
}
.clear {
	clear: both;
	display: block;
	font-size: 0px;
	line-height: 0px;
	margin: 0px;
	padding: 0px;
	border: 0px;
}
/**
 * page
 */
#donkeyJump {
	width: 480px;
	height: 800px;
	position: relative;
	margin: 0 auto;
	transform-origin: top center;
}
#donkeyJump .block {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 480px;
	height: 800px;
}
#donkeyJump .background {
	background-image: url(../images/system/background.jpg);
	background-repeat: no-repeat;
}
#donkeyJump .icon {
	background-image: url(../images/system/icon.png);
	background-repeat: no-repeat;
}
/**
 * 预备界面
 */
#gameCover {
	background-position: 0px 0px;
}
#authButtons {
	position: absolute;
	right: 15px;
	top: 15px;
	display: flex;
	gap: 10px;
	z-index: 1000;
}
#btnSignIn {
	padding: 8px 16px;
	background-color: #4a90e2 !important;
	color: white !important;
	text-decoration: none;
	border-radius: 4px;
	font-size: 14px;
	font-weight: bold;
	display: inline-block;
	background-image: none !important;
}
#btnSignUp {
	padding: 8px 16px;
	background-color: #ffffff !important;
	color: #4a90e2 !important;
	text-decoration: none;
	border-radius: 4px;
	font-size: 14px;
	border: 1px solid #4a90e2;
	font-weight: bold;
	display: inline-block;
	background-image: none !important;
}
#btnSound {
	display: block;
	position: absolute;
	left: 15px;
	top: 15px;
	width: 52px;
	height: 52px;
	background-position: -17px -1023px;
	z-index: 999;
}
#btnSound.disabled {
	background-position: -17px -971px;
}
#btnCup {
	display: block;
	position: absolute;
	left: 260px;
	top: 455px;
	width: 79px;
	height: 79px;
	background-position: -390px -1786px;
}
#btnCup:hover {
	background-position: -390px -1707px;
}
#btnScore {
	display: block;
	position: absolute;
	left: 20px;
	top: 535px;
	width: 152px;
	height: 110px;
	background-position: -225px -1246px;
}
#btnScore:hover {
	background-position: -225px -1136px;
}
#btnPlay {
	display: block;
	position: absolute;
	left: 175px;
	top: 595px;
	width: 166px;
	height: 107px;
	background-position: -220px -1508px;
}
#btnPlay:hover {
	background-position: -220px -1401px;
}
#btnAquarium {
	display: block;
	position: absolute;
	left: 175px;
	top: 500px;
	width: 130px;
	height: 50px;
	background-color: #ffffff !important;
	border: 2px solid #4a90e2;
	border-radius: 8px;
	line-height: 50px;
	text-align: center;
	color: #4a90e2;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	background-image: none !important;
}
#btnAquarium:hover {
	background-color: #f0f0f0;
}
#btnAquarium::before {
	content: "水族馆";
}
#aquariumPage {
	background-color: #4a90e2 !important;
	background-image: none !important;
}
#btnBackHome {
	display: block;
	position: absolute;
	left: 20px;
	top: 20px;
	width: 100px;
	height: 40px;
	background-color: #666 !important;
	border-radius: 6px;
	line-height: 40px;
	text-align: center;
	color: #ffffff;
	font-size: 16px;
	cursor: pointer;
	background-image: none !important;
}
#btnBackHome:hover {
	background-color: #555;
}
#btnBackHome::before {
	content: "返回首页";
}
#btnMore {
	display: block;
	position: absolute;
	left: 345px;
	top: 535px;
	width: 117px;
	height: 110px;
	background-position: -220px -1782px;
}
#btnMore:hover {
	background-position: -220px -1673px;
}
#progressText {
	display: block;
	position: absolute;
	left: 281px;
	top: 385px;
	-webkit-transform: rotate(-8deg);
	-moz-transform: rotate(-8deg);
}
.panel {
	position: absolute;
	left: 40px;
	right: 40px;
	bottom: 120px;
	padding: 18px 20px;
	border-radius: 14px;
	background: rgba(12, 16, 28, 0.88);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.08);
	color: #fff;
	font-size: 16px;
	line-height: 1.5;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45);
	z-index: 20;
}
.panel h2 {
	font-size: 20px;
	margin-bottom: 12px;
	text-align: center;
}
#panelLoadout {
	display: none;
}
#panelLoadout .loadout-options {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
	gap: 18px 22px;
	margin-bottom: 24px;
}
#panelLoadout button {
	height: 40px;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
	font-size: 15px;
	width: 100%;
	padding: 0 12px;
	cursor: pointer;
	transition: background 0.2s ease, border 0.2s ease, box-shadow 0.2s ease;
}
#panelLoadout button:hover,
#panelLoadout button.selected {
	background: rgba(255, 193, 7, 0.92);
	color: #000;
	border-color: rgba(255, 255, 255, 0.35);
	box-shadow: 0 4px 18px rgba(255, 193, 7, 0.35);
}
#panelLoadout p {
	margin: 0;
	text-align: center;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.92);
}
#panelLoadout #loadoutDescription {
	margin-top: 14px;
	padding: 12px;
	background: rgba(0, 0, 0, 0.55);
	border-radius: 12px;
	line-height: 1.6;
	color: #f4f7ff;
	box-shadow: inset 0 0 18px rgba(0, 0, 0, 0.25);
	min-height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	transition: opacity 0.2s ease;
}
#panelLoadout #loadoutDescription.is-empty {
	opacity: 0.35;
}
.aid-panel {
	position: absolute;
	left: 30px;
	right: 30px;
	top: 420px;
	display: none;
}
.aid-panel .aid-actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.aid-panel button {
	height: 44px;
	border-radius: 10px;
	border: none;
	background: rgba(76, 175, 80, 0.85);
	color: #fff;
	font-size: 18px;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.2s ease;
}
.aid-panel button:hover {
	background: rgba(56, 142, 60, 0.95);
	transform: translateY(-2px);
}
.aid-panel button#btnAidAd {
	background: rgba(33, 150, 243, 0.85);
}
.aid-panel button#btnAidAd:hover {
	background: rgba(25, 118, 210, 0.95);
}
.aid-panel p {
	margin-top: 8px;
	font-size: 14px;
	text-align: center;
	color: rgba(255, 255, 255, 0.8);
}
/**
 * 游戏主体
 */
#gameBody {
	display: none;
}
#gameCanvas {
	position: relative;
}
#gameCanvas canvas {
	position: absolute;
	left: 0px;
	top: 0px;
}
#touchControls {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	display: flex;
	pointer-events: none;
	z-index: 5;
}
#touchControls .touch-zone {
	flex: 1;
	pointer-events: auto;
	touch-action: none;
}
#touchControls .touch-zone-left,
#touchControls .touch-zone-right {
	background: rgba(0, 0, 0, 0);
}
#numberAndPause {
    position: absolute;
    left: 0px;
    top: 6vh;
    width: 480px;
    height: 150px;
}
@media (max-height: 720px) {
    #numberAndPause {
        top: 40px;
    }
}
#stageInfo {
    position: absolute;
    left: 20px;
    top: 10px;
    padding: 6px 12px;
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.5);
    color: #ffffff;
    font-size: 14px;
    line-height: 18px;
    max-width: 260px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    word-break: break-all;
}
#btnPause {
	display: block;
	position: absolute;
	left: 410px;
	top: 740px;
	width: 57px;
	height: 54px;
	background-position: -154px -970px;
}
#number {
	position: absolute;
	left: 8px;
	top: 8px;
	width: 168px;
	height: 110px;
	padding-left: 88px;
	background-position: -25px -773px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#number .number-digits {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 5px;
	transform: translateY(4px);
}
#number .digit {
	display: inline-block;
	width: 16px;
	height: 24px;
	background-image: url(../images/system/icon.png);
	background-repeat: no-repeat;
}
#number .number-minus {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 14px;
	background: none;
	font-size: 24px;
	font-weight: bold;
	color: #ffffff;
	line-height: 24px;
	margin: 0;
	padding: 0;
}
#number .meter-unit {
	display: inline-block;
	width: auto;
	background: none;
	font-size: 22px;
	font-weight: bold;
	color: #ffffff;
	line-height: 24px;
	margin: 0 0 0 2px;
	padding: 0;
}
#number .number0 {
	background-position: -8px -880px;
}
#number .number1 {
	background-position: -26px -880px;
}
#number .number2 {
	background-position: -44px -880px;
}
#number .number3 {
	background-position: -62px -880px;
}
#number .number4 {
	background-position: -80px -880px;
}
#number .number5 {
	background-position: -98px -880px;
}
#number .number6 {
	background-position: -116px -880px;
}
#number .number7 {
	background-position: -134px -880px;
}
#number .number8 {
	background-position: -152px -880px;
}
#number .number9 {
	background-position: -170px -880px;
}
#panelResume {
	position: absolute;
	left: 76px;
	top: 160px;
	width: 327px;
	height: 402px;
	background-position: -6px -277px;
	display: none;
}
#btnResumeExit, #btnResume {
	display: block;
	position: absolute;
	top: 246px;
	width: 97px;
	height: 97px;
}
#btnResumeExit {
	left: 50px;
}
#btnResume {
	left: 187px;
}
#beingReady {
	position: absolute;
	left: 46px;
	top: 346px;
	width: 388px;
	height: 108px;
	background-position: 0px 0px;
	display: none;
}
#beingGo {
	position: absolute;
	left: 130px;
	top: 355px;
	width: 220px;
	height: 90px;
	background-position: -4px -137px;
	display: none;
}
#canvasSkyLayer {
	background: #0D1635;
}
/**
 * 游戏结束
 */
#gameOver {
	display: none;
	background-position: -480px 0px;
}
#btnShare2 {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 99px;
	height: 99px;
	background-position: -357px -970px;
}
#name, #score {
	display: block;
	position: absolute;
	left: 145px;
	top: 465px;
	height: 33px;
	line-height: 33px;
	font-size: 22px;
	color: #ffb34a;
}
#score {
	top: 498px;
}
#btnScore2 {
	display: block;
	position: absolute;
	left: 20px;
	top: 600px;
	width: 144px;
	height: 117px;
	background-position: -18px -1247px;
}
#btnScore2:hover {
	background-position: -18px -1130px;
}
#btnRetry {
	display: block;
	position: absolute;
	left: 168px;
	top: 600px;
	width: 158px;
	height: 117px;
	background-position: -15px -1519px;
}
#btnRetry:hover {
	background-position: -15px -1403px;
}
#btnMore2 {
	display: block;
	position: absolute;
	left: 331px;
	top: 600px;
	width: 131px;
	height: 117px;
	background-position: -19px -1784px;
}
#btnMore2:hover {
	background-position: -19px -1667px;
}
#btnCup2 {
	display: block;
	position: absolute;
	left: 380px;
	top: 515px;
	width: 79px;
	height: 79px;
	background-position: -390px -1786px;
}
#btnCup2:hover {
	background-position: -390px -1707px;
}
.share-panel {
    display: none;
}
.share-panel .share-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.share-panel .share-actions button {
    height: 44px;
    border-radius: 10px;
    border: none;
    background: rgba(255, 193, 7, 0.85);
    color: #000;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
}
.share-panel .share-actions button:hover {
    background: rgba(255, 213, 79, 0.95);
    transform: translateY(-2px);
}
.share-panel .share-actions button#btnShareTelegram {
    background: rgba(33, 150, 243, 0.85);
    color: #fff;
}
.share-panel .share-actions button#btnShareTelegram:hover {
    background: rgba(25, 118, 210, 0.95);
}
.share-panel .share-actions button#btnShareClose {
    background: rgba(158, 158, 158, 0.75);
    color: #fff;
}
.share-panel .share-actions button#btnShareClose:hover {
    background: rgba(117, 117, 117, 0.9);
}
.share-panel p {
    margin-top: 8px;
    font-size: 14px;
    text-align: center;
    color: rgba(255, 255, 255, 0.8);
    word-break: break-all;
}