>>> ax-custom-title { z-index: 9999 !important; } .page-background { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; } .body { display: flex; flex-direction: column; width: 100%; height: 100%; position: relative; z-index: 1; } /* 退出中 */ .exiting { content: "正在结束"; display: flex; align-items: center; justify-content: center; color: #fff; position: fixed; top: 0; left: 0; width: 100%; height: 100%; font-size: 14px; overflow: hidden; z-index: 999999; } .exiting.lock { color: #3eb6f8; } .exiting .icon { display: flex; align-items: center; justify-content: center; font-size: 14vw; margin-bottom: 10px; color: inherit; } @keyframes show-long-press { 0% { opacity: 0; } 100% { opacity: 1; } } .exiting > .mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.45); backdrop-filter: blur(10px); transform-origin: top; animation: show-long-press 300ms ease; } .exiting > .contet { position: relative; z-index: 1; } .exiting .exiting-title { font-weight: bold; font-size: 18px; transform: translateY(-100%); } .exiting .close { transform: translateY(150%); border: 1px solid #fff; border-radius: 100px; padding: 5px 15px; } /* 计时器 */ .timer { text-align: center; } .timer .value { color: #3eb6f8; font-size: 30px; font-weight: bold; } .timer .name { font-weight: bold; margin-top: 5px; } /* 主图 */ .host-graph { margin-top: 20px; height: 800rpx; } .host-graph .image { margin-left: -180rpx; width: 80vw; } /* 主参数 */ .parameter-info-box { background: linear-gradient( 180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.72) 43%, #ffffff 100% ); border-radius: 32rpx; margin: 20rpx; } .parameter { display: flex; align-items: center; justify-content: space-between; padding: 0 10px; margin: 0 20px; margin-top: 10px; } .parameter .param { display: flex; align-items: center; justify-content: center; flex-direction: column; } .parameter .param .value { margin-top: 24rpx; font-size: 20px; /* font-weight: bold; */ } .parameter .param .name { font-size: 14px; color: #aaa; margin-top: 7px; } .end-charge-box { } .end-charge { margin: auto; margin-top: 32rpx; margin-bottom: 36rpx; width: 192rpx; height: 76rpx; background: linear-gradient(99deg, #8ff8fb 0%, #47aeff 100%); border-radius: 16rpx; font-weight: 800; font-size: 28rpx; color: #2b303a; text-align: center; line-height: 76rpx; } .end-charge::after { display: none; } /* 统计栏 */ .statbar { display: flex; align-items: center; justify-content: space-around; height: 80px; padding: 0 10px; border-radius: 8px; margin: 15px 20px; background-color: #f2f8ff; box-shadow: 0 3px 6px rgba(122, 168, 222, 0.3); /* overflow: hidden; */ position: relative; } .statbar::before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; box-shadow: 0 8px 8px #fff inset; } .statbar .sta { display: flex; align-items: center; justify-content: center; flex-direction: column; } .statbar .sta .value { color: #3eb6f8; font-size: 24px; font-weight: bold; } .statbar .sta .name { font-size: 14px; font-weight: bold; } .split { display: block; height: 60rpx; border-left: 1px solid #e5f1ff; } /* 主信息 */ .info { flex: 1; display: flex; flex-direction: column; background-color: #fff; border-radius: 16px 16px 0 0; padding: 10px; box-sizing: border-box; } .info .cell { display: flex; align-items: center; justify-content: space-between; font-size: 14px; height: 32px; padding: 0 10px; } .info .cell .contet { color: #aaa; } .info .tips { flex: 1; display: flex; align-items: center; justify-content: center; font-size: 12px; color: #aaa; } .info .end { display: flex; align-items: center; justify-content: center; font-size: 14px; border-radius: 8px; height: 50px; background: linear-gradient(to right, #8ff8fb, #47aeff); } .info .end::after { display: none; } .info .end[disabled] { background: #ddd; color: #aaa; } .countdown-ring { --countdown-ring-size: 150px; --countdown-ring-color: var(--color-red); --countdown-ring-duration: 2s; display: flex; width: var(--countdown-ring-size); height: var(--countdown-ring-size); border-radius: 100%; position: relative; } .countdown-ring > ._button { display: flex; align-items: center; justify-content: center; flex-direction: column; flex-wrap: wrap; width: calc(var(--countdown-ring-size) - 35px); height: calc(var(--countdown-ring-size) - 35px); color: #fff; font-size: 18px; font-weight: bold; background-color: var(--countdown-ring-color); border-radius: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .countdown-ring > ._half { flex: 1; height: var(--countdown-ring-size); overflow: hidden; position: relative; z-index: 1; } .countdown-ring > ._half::after { content: ""; display: block; width: var(--countdown-ring-size); height: var(--countdown-ring-size); border: 8px solid transparent; border-radius: 100%; box-sizing: border-box; position: absolute; top: 0; transform: rotate(-135deg); } .countdown-ring > ._half.left::after { left: 0; border-bottom-color: var(--countdown-ring-color); border-left-color: var(--countdown-ring-color); } .countdown-ring > ._half.right::after { right: 0; border-top-color: var(--countdown-ring-color); border-right-color: var(--countdown-ring-color); } .countdown-ring.active > ._half.left::after { animation: show calc(var(--countdown-ring-duration) / 2) linear 1; animation-delay: calc(var(--countdown-ring-duration) / 2); animation-fill-mode: forwards; } .countdown-ring.active > ._half.right::after { transform: rotate(45deg); animation: show calc(var(--countdown-ring-duration) / 2) linear 1; } @keyframes show { 0% { transform: rotate(-135deg); } 100% { transform: rotate(45deg); } }