html, body, div {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
}

body {
    background: #000;
    height: 100%;
    width: 100%;
    text-align: center;
    padding-top: constant(safe-area-inset-top);
    padding-right: constant(safe-area-inset-right);
    padding-bottom: constant(safe-area-inset-bottom);
    padding-left: constant(safe-area-inset-left);
    padding-top: env(safe-area-inset-top);
    padding-right: env(safe-area-inset-right);
    padding-bottom: env(safe-area-inset-bottom);
    padding-left: env(safe-area-inset-left);
    overflow-x: hidden;
}

.game {
    position: fixed;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: center;
    background-size: contain;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    -moz-box-shadow: 0 0 10px #000;
    -webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
    -webkit-overflow-scrolling: touch;
}

.full-size {
    width: 100%!important;
    height: 100%!important;
}

.game canvas, .spine {
    position: absolute;
    position: fixed;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.alert {
    position: absolute;
    position: fixed;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: #FFF;
    width: 90%;
    font-size: 40px;
    text-align: left;
    padding-top: 20px;
}

.mobile .alert {
    font-size: 40px;
}

/* mobile */
:fullscreen { background-color: #000; }
:-webkit-full-screen { background-color: #000; }
:-moz-full-screen { background-color: #000; }
:-ms-fullscreen{ background-color: #000; }

.landscape{
    z-index: 5;
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background-color: #000;
    background-size: 40%;
    background-repeat: no-repeat;
    background-position: center;
}

.fullscreen {
    z-index: 10;
    position: relative;
    overflow: scroll;
    width: 100%;
    bottom: 0;
    background-color: #000;
    background-size: 30%;
    background-repeat: no-repeat;
    background-position: center top;
    right: constant(safe-area-inset-right);
    right: env(safe-area-inset-right, -50px);
}

.hidden {
    display: none;
}

.disableTouch {
    touch-action: none;
    user-select: none;
    pointer-events: none;
}

.spine {
    pointer-events: none;
    touch-action: none;
    user-select: none;
}

.vertical-background {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    object-fit: cover;
    touch-action: none;
    user-select: none;
    pointer-events: none;
}

.mobile .vertical-background {
    display: none;
}

/* iframe */
.iframePos {
    position: relative;
    z-index: 99;
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    background-color: #000;
}

.iframeHorizontal .iframePos {
    width: 90vw;
}

iframe {
    width: 100%;
    height: 100%;
    position: relative;
}

.iframePos > a > div {
    height: 60px;
    width: 10px;
    background-color: #FFFFFF;

    position: absolute;
    right: 10%;
    top: 40px;
}

.iframePos > a:hover > div { 
    background-color:rgb(90, 90, 90);
}

.iframePos > a > div.closeLeft {
    transform: rotate(45deg)
}

.iframePos > a > div.closeRight {
    transform: rotate(-45deg)
}

.close {
    display: none;
}

/* feedback iframe */
.iframeWrap {
    width: 100%;
    height: 100%;
}

.iframeWrap iframe {
    border: none;
}

.iframeWrap .closeBtn {
    position: absolute;
    z-index: 9999;
    width: 2.5rem;
    height: 2.5rem;
    right: 0;
    margin: 1rem;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/feedback/m_btn_help_return_up.png');
}

.iframeWrap .closeBtn:hover {
    background-image:url('../images/feedback/m_btn_help_return_hover.png');
}

.closeIframe {
    display: none;
}

/* promotion */
.promotionPos {
    position: fixed;
    z-index: 50;
    display: flex;
    left: 10px;
    top: 10px;
    transform-origin: left top;
}

.promotion {
    width: 152px;
    height: 152px;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/promotion/m_btn_activity.png');
    display: flex;
    justify-content: center;
    align-items: center;
}

.promotionImage {
    border: none;
}

/* 直立 */
.portraitMode .promotionPos {
    flex-direction: column;
    left: 38px;
    top: 245px;
}

.portraitMode .promotion {
    width: 126px;
    height: 126px;
}

.mobile.portraitMode .promotionPos {
    left: 38px;
    top: 255px;
}

/* 活動連結排列reverse */
.promotionDirctionReverse {
    flex-direction: row-reverse;
}

/* 活動loading圖 */
.promoteLoading {
    background-size: contain;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: center;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
}

/* 活動loading圖 動畫位置 */
.promoteLoadingMove {
    margin-top: 10px;
    margin-left: 10px; 
}

/* 活動loading圖 層級*/
.promoteLoadingLevel {
    z-index: 99;
}

/* 手機 活動loading圖滿版 */
.promoteLoading-full-size {
    width: 100%;
    height: 100%;
}

/* help系統化 iframe */
.iframeHelpWrap {
    width: 100%;
    height: 100%;
}

.iframeHelpWrap iframe {
    border: none;
    top: -1px;
}

.iframeHelpWrap .verticalCloseBtn {
    position: absolute;
    z-index: 9999;
    width: 50px;
    height: 50px;
    bottom: -5px;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/helpSystematization/m_btn_help_return_up.png');
}

.iframeHelpWrap .verticalCloseBtn:hover {
    background-image:url('../images/helpSystematization/m_btn_help_return_hover.png');
}

.iframeHelpWrap .verticalCloseBtn:active {
    background-image:url('../images/helpSystematization/m_btn_help_return_down.png');
}

.iframeHelpWrap .closeBtn {
    position: absolute;
    z-index: 9999;
    width: 70px;
    height: 52px;
    bottom: -3px;
    left: constant(safe-area-inset-left);
    left: min(30px, env(safe-area-inset-left));
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/helpSystematization/m_btn_help_return_up.png');
}

.iframeHelpWrap .closeBtn:hover {
    background-image:url('../images/helpSystematization/m_btn_help_return_hover.png');
}

.iframeHelpWrap .closeBtn:active {
    background-image:url('../images/helpSystematization/m_btn_help_return_down.png');
}

/* 會員系統 - 任務 iframe */
.iframeMissionWrap {
    position: fixed;
    z-index: 80;
    margin: auto;
    top: -0.2%;
    left: 0;
    right: 0;
    bottom: 0;
}

.iframeMissionObj, .memberSystem iframe {
    border: none;
}

.missionCloseBtn {
    position: absolute;
    width: 58px;
    height: 58px;
    top: -4.3%;
    right: -3.2%;
    cursor: pointer;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/memberCenter/share/btn_member_close.png');
}

/* 會員系統 - 直式任務 iframe 設定 */
.iframeMissionVertical {
    top: 46.11%;
    left: 50%;
    transform: translate(-43.6%, -48.6%);
    margin: 0;
}

.iframeMissionVertical .missionCloseBtn {
    top: -4.4%;
    right: -3.6%;
}

/* 會員系統 - 1.會員vip 2.活動連結 使用的iframe */
.memberSystem {
    position: fixed;
    width: 100vw;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.memberSystem .closeLeft, .memberSystem .closeRight {
    width: 5vw;
    height: 1vw;
    top: 4vh;
    right: 0vw   
}

.memberSystem iframe {
    position: absolute;
    top: 0;
    left: 3%;
    width: 94%;
    height: 100%;
}

.iframeHorizontal .memberSystem {
    width: 100vw;
}

.iframeMemberWrap .closeBtn {
    position: absolute;
    z-index: 9999;
    width: 58px;
    height: 58px;
    top: -4.8%;
    right: -3%;
    cursor: pointer;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/C9/share/member/layout/btn_vip_close.webp');
}

.iframeMemberWrap .btnDown {
    position: absolute;
    z-index: 9998;
    width: 148px;
    height: 90px;
    top: -0.9%;
    left: -12.6%;
    transform: rotate(-90deg);
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/C9/share/member/layout/btn_vip_down_bg.webp');
}

.iframeMemberWrap .btnInfo {
    position: absolute;
    z-index: 9999;
    cursor: pointer;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/C9/share/member/layout/btn_vip_info_up.webp');
}

.iframeMemberWrap .btnInfo:active {
    background-image:url('../images/C9/share/member/layout/btn_vip_info_down.webp');
}

.iframeMemberWrap .btnHistory {
    position: absolute;
    z-index: 9999;
    cursor: pointer;
    background-repeat: no-repeat;
    background-size: cover;
    background-image:url('../images/C9/share/member/layout/btn_vip_history_up.webp');
}

.iframeMemberWrap .btnHistory:active {
    background-image:url('../images/C9/share/member/layout/btn_vip_history_down.webp');
}