html, body {
    margin: 0;
    padding: 0;
    font-size: 100%;
}

@media (min-width:1025px) {
    /*ipad air , pc, ipad pro */
    html {
        font-size: 11px;
    }
}

.container {
    width: 100%;
    /*height: 100%;*/
    min-height: 100vh;
    position: relative;
    top: 0;
    left: 0;
    /*overflow: scroll;*/
    background: linear-gradient(163.97deg, #7A797A 1.7%, #3E3D3E 118.16%);
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.container .center{
    flex: 1;
}


.container .row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 30px 0;
}

@media (min-width:1025px) {
    .container .row {
        padding: 0;
    }
}

.left-cont {
    flex: 2;
    /*padding-right: 20px;*/
    padding: 30px 0;
    padding-right: 15px;
}

.right-cont {
    flex: 3;
    padding: 30px 0;
}

.location {
    margin-left: auto;
    margin-right: auto;
    padding-top: 24px;
    text-align: center;
    font-size: 2rem;
    color: #C5C5C5;
    font-family: sans-serif;
}

.video-info {
    margin-left: auto;
    margin-right: auto;
    /*margin-top: 24px;*/
    text-align: center;
    font-family: sans-serif;
    /*font-weight: 600;*/
    font-size: 2.25rem;
    color: #E3E1E1;
    width: 90%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;

    margin-top: 0;
    padding-top: 0;
}

.video-info > div,
.location > div {
    display: block;
    margin: 5px;
}

.video-info-bvid {
    margin-top: 18px;
    display: block;
}

@media (min-width:1025px) {
    /*ipad air , pc, ipad pro */
    .location > div {
        display: inline-block;
    }

    .video-info-bvid {
        display: inline-block;
    }
}

.speed-pane {
    /*margin: 80px auto;*/
    margin: auto;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: linear-gradient(
            145.64deg, #616063 15.36%, #37323C 85.53%);
    position: relative;
    box-shadow: 28px 48px 92px rgb(0 0 0 / 50%), 20px 20px 40px rgb(115 7 60 / 40%), -8px -12px 48px rgb(61 189 166 / 40%);
    transform: scale(0.8)
}


.speed-pane-indicator {
    --percentage: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: conic-gradient(#7EDAF6 calc(var(--percentage) * 1%), #fff0 0);
    transform: rotate(180deg);

}

.speed-pane-inner {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    width: 450px;
    height: 450px;
    border-radius: 50%;
    transform: rotate(-180deg);
    background: linear-gradient(145.64deg, #616063 15.36%, #37323C 85.53%);
}

.speed-pane-video-cover {
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto 500px;
    height: 100%;
    border-radius: inherit;
}


.speed-pane-meter {
    border-radius: inherit;
    font-family: sans-serif;
    font-weight: 400;
    text-align: center;
    color: #7EDAF6;
    height: 100%;
    backdrop-filter: blur(6px) brightness(0.5);
    -webkit-backdrop-filter: blur(6px) brightness(0.5);
}

.speed-pane-meter-text {
    width: inherit;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.speed-pane-meter-count {
    font-size: 8.75rem;
}

.speed-pane-meter-unit {
    font-size: 2.8rem;
}

.test-result-container {
    transform: scale(0.9);
}

.test-result-table {
    background: #3C4046;
    box-shadow: inset 8px 8px 25px rgb(19 20 21 / 50%);
    border-radius: 64px;
    padding: 46px;
    color: #e1e1e1;
    font-family: sans-serif;
    font-size: 2.25rem;
    margin: auto;
    font-weight: lighter;

    height: 500px;
    min-width: 580px;
    overflow: auto;
}

.table-align-left {
    text-align: left;
    padding-bottom: 8px;
}

.table-align-center {
    text-align: center;
    padding-bottom: 8px;
}

.table-align-right {
    text-align: right;
    padding-bottom: 8px;
}

.reminder-container {
    /*width: 100%;*/
    /*height: 250px;*/

    width: auto;
    height: auto;
    padding: 40px 40px 0 20px;
    /*margin: 70px auto 70px auto;*/
}

.reminder-text {
    margin: 0 auto 0 auto;
    /*padding-bottom: 100px;*/
    /*text-align: left;*/
    font-family: sans-serif;
    /*font-size: 2.25rem;*/
    font-size: 2.8rem;
    /*width: 700px;*/
    color: #e1e1e1;
    font-weight: 600;

    text-align: center;
    width: auto;
    padding-bottom: 0;
}

.red-text {
    color: #FF5C5C;
}

.circle-wrap {
    margin: 70px auto;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    box-shadow: 28px 48px 92px rgb(0 0 0 / 50%), 20px 20px 40px rgb(115 7 60 / 40%), -8px -12px 48px rgb(61 189 166 / 40%);
    background: linear-gradient(145.64deg, #616063 15.36%, #37323C 85.53%);
}

.circle {
    width: 100%;
    height: 100%;
    border-radius: inherit;
    transform: rotate(180deg);
}

.circle-wrap .circle .mask,
.circle-wrap .circle .fill {
    width: 500px;
    height: 500px;
    position: absolute;
    border-radius: 50%;
}

.circle-wrap .circle .mask {
    clip: rect(0px, 500px, 500px, 250px);
}

.circle-wrap .inside-circle {
    width: 500px;
    height: 500px;
    border-radius: 50%;
    position: absolute;
    font-weight: 700;
    font-size: 2em;
    transform: rotate(-180deg);
}

/* color animation */

/* 3rd progress bar */
.mask .fill {
    clip: rect(0px, 250px, 500px, 0px);
    background-color: #7EDAF6;
}

.mask.full,
.circle .fill {
    animation: fill ease-in-out 3s;
    transform: rotate(90deg);
}

@keyframes fill {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(90deg);
    }
}

.column-format {
    width: 165px;
}

.column-cdn {
    width: 396px;
}

.column-latency {
    width: 90px;
}

.column-bandwidth {
    width: 145px;
}


/*#id-speed-meter-count::after {*/
/*    !*font: 800 40px system-ui;*!*/
/*    content: counter(count);*/
/*    animation: counter 5s linear forwards;*/
/*    counter-reset: count 0;*/
/*}*/

@keyframes counter {
    0% {
        counter-increment: count;
    }
    100% {
        counter-increment: count;
    }
}

.bottom-logo {
    width: 100%;
    /*position: absolute;*/
    /*bottom: 50px;*/
    display: flex;
    justify-content: center;
    padding: 40px 0;
}

.bottom-logo > img {
    width: 245px;
}

.header-logo {
    display: none;
}

@media (min-width:1025px) {
    /*ipad air , pc, ipad pro */
    .bottom-logo {
        display: none;
    }

    .header-logo {
        display: block;
        padding: 20px;
    }

    .header-logo img {
        height: 34px;
    }
}

