:root {
    --phone-width: 430px;
    --bg: #0f0c29;
    --bg-deep: #131719;
    --footer: #131519;
    --panel: #1d2326;
    --panel2: #242a2d;
    --text: #FFFFFFCC;
    --muted: #5d6766;
    --active: #bb8bd6;
    --green: #0fd1c1;
    --button-text: #08c9b6;
    --button-bg: #00FFE114;
    --line: #FFFFFF14;
    --shadow: none;
    
    --page-bg: linear-gradient(135deg, #0f0c29 0%, #302b63 50%, #24243e 100%);
}

*,
:after,
:before {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    scroll-behavior: smooth;
    background: var(--bg);
    background-image: var(--page-bg);
    background-repeat: no-repeat;
    background-size: 100% 100vh;
    background-position: top center
}

body {
    width: 100%;
    max-width: var(--phone-width);
    min-height: 100vh;
    color: var(--text);
    font: 14px/1.42 -apple-system, BlinkMacSystemFont, "Microsoft YaHei", Arial, sans-serif;
    overflow-x: hidden;
    margin: 0 auto;
    background: transparent
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
    display: block
}

ol,
ul {
    list-style: none
}

img {
    display: block;
    max-width: 100%;
    height: auto;
    border: 0
}

b,
em,
i,
strong {
    font-weight: 400;
    font-style: normal
}

button,
input,
select,
textarea {
    font-size: inherit;
    font-family: inherit;
    vertical-align: middle;
    outline: 0;
    -webkit-appearance: none
}

::-moz-focus-inner,
a,
a:focus,
button,
button:focus,
input,
input:focus {
    outline: 0 !important
}

a {
    color: var(--text);
    text-decoration: none;
    -webkit-tap-highlight-color: transparent
}

a:hover,
a:focus,
a:active {
    color: var(--text);
    text-decoration: none
}

.page {
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding: 8px 8px calc(78px + env(safe-area-inset-bottom));
    background: transparent
}

.page-panels {
    position: relative;
    min-height: calc(100vh - 86px)
}

.page-slide {
    display: none;
    min-height: calc(100vh - 86px)
}

.page-slide.active {
    display: block
}

.notice {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    height: 40px;
    color: var(--text);
    font-size: 13px;
    line-height: 1;
    padding: 0 17px;
    background: #FFFFFF1A;
    border: 0;
    border-radius: 20px;
    box-shadow: none;
    overflow: hidden;
    z-index: 8
}

.notice span {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    background: var(--green);
    clip-path: polygon(0 35%, 62% 9%, 62% 91%, 0 65%)
}

.notice-text {
    flex: 1;
    min-width: 0;
    overflow: hidden
}

.notice p {
    display: inline-block;
    min-width: max-content;
    white-space: nowrap;
    text-overflow: clip;
    overflow: visible;
    animation: notice-scroll 12s linear infinite;
    will-change: transform
}

@keyframes notice-scroll {
    0%,
    12% {
        transform: translateX(0)
    }
    100% {
        transform: translateX(calc(-100% - 20px))
    }
}

.banner {
    position: relative;
    margin-top: 10px;
    overflow: hidden;
    border-radius: 8px;
    background: #0b0f10;
    box-shadow: none
}

.banner-track {
    position: relative;
    width: 100%;
    aspect-ratio: 1.83/1
}

.banner-item {
    position: absolute;
    inset: 0;
    display: block;
    opacity: 0;
    transition: opacity .35s ease
}

.banner-item.active {
    opacity: 1;
    z-index: 1
}

.banner-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px
}

.banner-dots {
    position: absolute;
    right: 0;
    bottom: 9px;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    z-index: 2
}

.banner-dots button {
    width: 5px;
    height: 5px;
    background: rgba(30, 232, 211, .36);
    border: 0;
    border-radius: 8px;
    box-shadow: 0 0 6px rgba(0, 0, 0, .18)
}

.banner-dots button.active {
    width: 16px;
    background: linear-gradient(90deg, #22cfc0, #0aa796);
    box-shadow: 0 0 10px rgba(48, 232, 211, .32)
}

.nav-section,
.local-section,
.live-section {
    margin-top: 12px
}

.nav-section.first,
.local-section.first,
.live-section.first {
    margin-top: 0
}

.section-title {
    display: none
}

.page-slide:not([data-panel="hot"]) .section-title {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 40px;
    color: #0fd1c1;
    margin-bottom: 14px;
    background: linear-gradient(90deg, #22cfc0, #a70a90);
    border: 0;
    border-radius: 6px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .1);
    overflow: hidden;
    z-index: 8
}

.section-title:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 42%;
    height: 100%;
    background: linear-gradient(90deg, rgba(7, 25, 62, .32), transparent);
    content: ""
}

.section-title:after {
    display: none;
    content: none
}

.section-title strong {
    position: relative;
    display: inline-flex;
    align-items: center;
    color: transparent;
    font-size: 16px;
    font-weight: 800;
    font-style: italic;
    font-family: "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;
    line-height: 1;
    letter-spacing: .8px;
    background: linear-gradient(90deg, #22cfc0, #0aa796);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke: .18px rgba(224, 195, 252, .45);
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .32));
    z-index: 1
}

.section-title strong:before {
    display: block;
    flex-shrink: 0;
    width: 7px;
    height: 7px;
    margin-right: 7px;
    background: linear-gradient(135deg, #f4fff6, #39d7c9);
    border-radius: 2px;
    box-shadow: 0 0 8px rgba(58, 225, 209, .55);
    content: "";
    transform: rotate(45deg);
    -webkit-text-fill-color: initial
}

.section-title em {
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 16px;
    color: rgba(205, 255, 245, .72);
    font-size: 9px;
    font-weight: 700;
    font-style: italic;
    line-height: 16px;
    margin-left: 9px;
    padding: 0 6px;
    background: rgba(255, 255, 255, .08);
    border-radius: 8px;
    z-index: 1
}

.app-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    column-gap: 10px;
    row-gap: 16px
}

.app-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0
}

.app-card img {
    width: min(100%, 62px);
    aspect-ratio: 1/1;
    object-fit: cover;
    background: transparent;
    border: 0;
    border-radius: 10px;
    box-shadow: none;
    outline: 0
}

.app-card strong {
    width: 100%;
    color: var(--text);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    margin-top: 7px
}

.app-card span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    width: 54px;
    height: 22px;
    color: #74dcd3;
    font-size: 10px;
    line-height: 1;
    margin-top: 5px;
    background: var(--button-bg);
    border: 0;
    border-radius: 22px
}

.app-card span:after {
    position: relative;
    top: 1px;
    display: block;
    flex-shrink: 0;
    width: 5px;
    height: 5px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    content: "";
    transform: rotate(45deg)
}

.app-card.shop span {
    color: #74dcd3
}

.ad-img {
    margin-top: 14px;
    border: 0;
    border-radius: 6px;
    overflow: hidden;
    background: transparent;
    box-shadow: none
}

.ad-img a,
.ad-img img {
    display: block;
    width: 100%
}

.ad-img img {
    height: auto
}

.home-local-section {
    margin-top: 18px
}

.home-local-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 32px;
    margin-bottom: 10px;
    padding: 0 4px
}

.home-local-title strong {
    display: inline-flex;
    align-items: center;
    color: transparent;
    font-size: 16px;
    font-weight: 800;
    font-style: italic;
    letter-spacing: .8px;
    background: linear-gradient(90deg, #22cfc0, #0aa796);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .32))
}

.home-local-title strong:before {
    display: block;
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    margin-right: 7px;
    background: linear-gradient(135deg, #f4fff6, #39d7c9);
    border-radius: 2px;
    box-shadow: 0 0 8px rgba(58, 225, 209, .55);
    content: "";
    transform: rotate(45deg)
}

.home-local-title span {
    color: rgba(116, 220, 211, .72);
    font-size: 10px;
    font-weight: 700;
    font-style: italic;
    letter-spacing: .8px
}

.home-girls {
    padding-bottom: 4px
}

.live-list {
    display: flex;
    flex-direction: column;
    gap: 9px
}

.live-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: none
}

.live-card img {
    flex-shrink: 0;
    width: 68px;
    height: 68px;
    object-fit: cover;
    background: #242b2f;
    border: 0;
    border-radius: 11px
}

.live-card div {
    flex: 1;
    min-width: 0
}

.live-card strong {
    display: block;
    color: var(--text);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.live-card span {
    display: inline-flex;
    align-items: center;
    height: 22px;
    color: var(--button-text);
    font-size: 11px;
    margin-top: 7px;
    padding: 0 9px;
    background: var(--button-bg);
    border: 0;
    border-radius: 12px
}

.live-card em {
    flex-shrink: 0;
    color: #102426;
    font-size: 12px;
    font-weight: 700;
    line-height: 26px;
    text-align: center;
    width: 52px;
    height: 26px;
    background: var(--button-text);
    border-radius: 15px
}

.online-list,
.girls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px
}

.online-card,
.girls a {
    display: block;
    background: linear-gradient(180deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .04));
    border: 1px solid rgba(215, 255, 248, .18);
    border-radius: 10px;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .035), 0 8px 20px rgba(0, 0, 0, .12);
    overflow: hidden
}

.online-cover,
.girl-img {
    position: relative;
    background: #0b0f10
}

.online-cover>img,
.girl-img>img {
    display: block;
    width: 100%;
    aspect-ratio: 1/1.18;
    object-fit: cover;
    border-radius: 10px 10px 0 0
}

.online-top {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 6px
}

.online-top>img {
    width: 22px;
    height: 22px
}

.online-num {
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 26px;
    color: #fff;
    font-size: 11px;
    line-height: 1;
    padding: 0 9px 0 8px;
    background: rgba(13, 21, 26, .58);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 26px;
    backdrop-filter: blur(8px)
}

.online-num:before {
    display: block;
    flex-shrink: 0;
    width: 11px;
    height: 11px;
    margin-right: 4px;
    background-color: #fff;
    mask: url(../images/icons/play.svg) no-repeat center/contain;
    -webkit-mask: url(../images/icons/play.svg) no-repeat center/contain;
    content: ""
}

.online-num span {
    font-weight: 700;
    margin-right: 3px
}

.online-enter {
    position: absolute;
    top: 58%;
    left: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 94px;
    height: 30px;
    color: #f4fffd;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    margin-top: -15px;
    margin-left: -47px;
    background: rgba(30, 232, 211, .42);
    border: 0;
    border-radius: 16px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .12);
    animation: enter-breathe 1.8s ease-in-out infinite
}

@keyframes enter-breathe {
    0%,
    100% {
        transform: scale(1)
    }
    50% {
        transform: scale(1.07)
    }
}

.online-info {
    padding: 9px 9px 10px
}

.online-info h2 {
    color: var(--text);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.25;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.online-info p {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: rgba(255, 255, 255, .58);
    font-size: 11px;
    margin-top: 5px
}

.online-info p em,
.online-info p span {
    position: relative;
    padding-left: 14px
}

.online-info p em:before,
.online-info p span:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 11px;
    height: 11px;
    transform: translateY(-50%);
    content: ""
}

.online-info p span:before {
    background-color: var(--button-text);
    mask: url(../images/icons/dot.svg) no-repeat center/contain;
    -webkit-mask: url(../images/icons/dot.svg) no-repeat center/contain
}

.online-info p span i {
    color: var(--button-text);
    margin-right: 3px
}

.online-info p em:before {
    background-color: rgba(255, 255, 255, .7);
    mask: url(../images/icons/zan.svg) no-repeat center/contain;
    -webkit-mask: url(../images/icons/zan.svg) no-repeat center/contain
}

.girl-img .girl-b,
.girl-img .girl-t {
    position: absolute;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%
}

.girl-img .girl-t {
    top: 0;
    color: #fff;
    font-size: 10px;
    font-weight: 500;
    padding: 6px
}

.girl-img .girl-b {
    bottom: 0;
    padding: 0 8px;
    transform: translateY(42%)
}

.girl-img .girl-t .num,
.girl-img .girl-t .org {
    position: relative;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    text-shadow: 0 1px 5px rgba(0, 0, 0, .45)
}

.girl-img .girl-t .org {
    height: 23px;
    line-height: 1;
    padding: 0 8px 0 6px;
    background-color: rgba(13, 21, 26, .52);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 23px;
    backdrop-filter: blur(8px)
}

.girl-img .girl-t .num {
    height: 27px;
    line-height: 1;
    padding: 0 8px 0 6px;
    background-color: rgba(13, 21, 26, .58);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 27px;
    backdrop-filter: blur(8px)
}

.girl-img .girl-t .num:before,
.girl-img .girl-t .org:before {
    display: block;
    flex-shrink: 0;
    width: 17px;
    height: 17px;
    margin-right: 3px;
    background-size: cover;
    content: ""
}

.girl-img .girl-t .org:before {
    background: url(../images/icons/org.svg) no-repeat center/contain
}

.girl-img .girl-t .num:before {
    background: url(../images/icons/like.svg) no-repeat center/contain
}

.girl-img .girl-b .video {
    height: 25px
}

.girl-img .girl-b .btn {
    width: 82px;
    height: auto
}

.girl-info {
    margin-top: 21px;
    padding: 0 9px 11px;
    background: transparent
}

.girl-info h2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: var(--text);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.25
}

.girl-info h2 span {
    position: relative;
    flex-shrink: 0;
    color: rgba(255, 255, 255, .68);
    font-size: 11px;
    font-weight: 400;
    padding-left: 14px
}

.girl-info h2 span:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 11px;
    height: 11px;
    background-color: rgba(255, 255, 255, .68);
    mask: url(../images/icons/addr.svg) no-repeat center/contain;
    -webkit-mask: url(../images/icons/addr.svg) no-repeat center/contain;
    transform: translateY(-50%);
    content: ""
}

.girl-info h3 {
    color: #7fe7dc;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
    margin: 5px 0 7px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.girl-info dl {
    display: flex;
    align-items: center;
    color: rgba(255, 255, 255, .68);
    font-size: 11px;
    line-height: 1.75
}

.girl-info dt {
    flex-shrink: 0;
    width: 34px;
    color: var(--button-text);
    font-weight: 500
}

.girl-info dd {
    flex: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.girl-info dd span+span {
    margin-left: 5px
}

.local-list {
    display: flex;
    flex-direction: column;
    gap: 9px
}

.local-card {
    display: grid;
    grid-template-columns: 98px minmax(0, 1fr);
    gap: 10px;
    padding: 9px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: none
}

.local-cover {
    position: relative;
    overflow: hidden;
    height: 128px;
    background: #0b0f10;
    border-radius: 10px
}

.local-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.local-cover span {
    position: absolute;
    top: 6px;
    right: 6px;
    color: var(--text);
    font-size: 11px;
    font-weight: 400;
    line-height: 1;
    padding: 4px 6px;
    background: rgba(0, 0, 0, .48);
    border-radius: 8px
}

.local-info {
    min-width: 0;
    padding: 1px 0
}

.local-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px
}

.local-top h3 {
    color: var(--text);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.15;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.local-top p {
    color: var(--button-text);
    font-size: 12px;
    line-height: 1;
    margin-top: 6px
}

.local-top em {
    flex-shrink: 0;
    color: #102426;
    font-size: 12px;
    font-weight: 700;
    line-height: 26px;
    text-align: center;
    width: 50px;
    height: 26px;
    background: var(--button-text);
    border-radius: 15px;
    box-shadow: none
}

.local-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 8px
}

.local-tags span {
    color: var(--text);
    font-size: 11px;
    line-height: 20px;
    height: 20px;
    padding: 0 7px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid var(--line);
    border-radius: 10px
}

.local-line {
    display: flex;
    align-items: flex-start;
    min-height: 28px;
    color: var(--text);
    font-size: 12px;
    line-height: 1.42;
    margin-top: 6px;
    padding: 5px 7px;
    background: rgba(255, 255, 255, .06);
    border-radius: 7px
}

.local-line b {
    flex-shrink: 0;
    width: 58px;
    color: #5d6766;
    font-weight: 400
}

.footer-nav {
    position: fixed;
    right: calc((100vw - min(100vw, var(--phone-width)))/2);
    bottom: 0;
    left: calc((100vw - min(100vw, var(--phone-width)))/2);
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    width: min(100vw, var(--phone-width));
    height: calc(62px + env(safe-area-inset-bottom));
    padding-top: 7px;
    padding-bottom: env(safe-area-inset-bottom);
    background: var(--footer);
    border-top: 1px solid rgba(255, 255, 255, .06);
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -10px 24px rgba(0, 0, 0, .24), 0 -1px 0 rgba(255, 255, 255, .05);
    overflow: hidden;
    z-index: 20
}

.footer-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    flex: 1;
    height: 52px;
    color: var(--muted);
    cursor: pointer;
    font-size: 11px;
    line-height: 1;
    background: transparent;
    border: 0
}

.footer-item i {
    position: relative;
    display: block;
    width: 27px;
    height: 27px;
    color: currentColor;
    background: currentColor;
    border: 0;
    border-radius: 0;
    -webkit-mask: var(--icon) center/25px 25px no-repeat;
    mask: var(--icon) center/25px 25px no-repeat
}

.footer-item span {
    display: block;
    font-weight: 400
}

.footer-item.active {
    color: var(--active)
}

.footer-item.active i {
    background: currentColor;
    box-shadow: none
}

.footer-item i:before,
.footer-item i:after {
    display: none;
    content: none
}

.ico-recommend {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h7v7H4V4zm9 0h7v7h-7V4zM4 13h7v7H4v-7zm9 0h7v7h-7v-7z'/%3E%3C/svg%3E")
}

.ico-movie {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 6.5A2.5 2.5 0 0 1 6.5 4h11A2.5 2.5 0 0 1 20 6.5v11a2.5 2.5 0 0 1-2.5 2.5h-11A2.5 2.5 0 0 1 4 17.5v-11zm6 2.2v6.6c0 .58.63.94 1.13.64l5.1-3.3a.75.75 0 0 0 0-1.28l-5.1-3.3A.75.75 0 0 0 10 8.7z'/%3E%3C/svg%3E")
}

.ico-live {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 4.5A4 4 0 0 1 12 8.5v5A4 4 0 0 1 8 17.5a4 4 0 0 1-4-4v-5a4 4 0 0 1 4-4zm8 1.5a1 1 0 0 1 1 1v5.8a9 9 0 0 1-8 8.94V23h4a1 1 0 1 1 0 2H3a1 1 0 1 1 0-2h4v-1.26A9 9 0 0 1-1 12.8V7a1 1 0 1 1 2 0v5.8a7 7 0 0 0 14 0V7a1 1 0 0 1 1-1z' transform='translate(4 -2)'/%3E%3C/svg%3E")
}

.ico-date {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21s-7-4.55-7-10.2A4.8 4.8 0 0 1 13.55 7.8 4.8 4.8 0 0 1 22 10.8C22 16.45 15 21 15 21h-3zM9.8 8.2a2 2 0 0 0-2 2c0 2.32 2.6 4.67 4.2 5.86 1.6-1.19 4.2-3.54 4.2-5.86a2 2 0 0 0-3.45-1.38L12 9.62l-.75-.8a2 2 0 0 0-1.45-.62z'/%3E%3C/svg%3E")
}

.ico-betting {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.5 21.5 12 12 21.5 2.5 12 12 2.5zm0 5.3L7.8 12l4.2 4.2 4.2-4.2L12 7.8z'/%3E%3C/svg%3E")
}

.ico-shop {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 8V7a5 5 0 0 1 10 0v1h2.2a1 1 0 0 1 1 1.1l-1 10a2 2 0 0 1-2 1.9H6.8a2 2 0 0 1-2-1.9l-1-10A1 1 0 0 1 4.8 8H7zm2 0h6V7a3 3 0 0 0-6 0v1z'/%3E%3C/svg%3E")
}

.tg-service {
    position: fixed;
    right: max(14px, calc((100vw - var(--phone-width))/2 + 14px));
    bottom: calc(94px + env(safe-area-inset-bottom));
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: #102426;
    background: var(--button-text);
    border: 0;
    border-radius: 50%;
    box-shadow: none;
    z-index: 30
}

.tg-service svg {
    display: block;
    width: 20px;
    height: 20px;
    fill: currentColor;
    transform: translateX(-1px)
}

@media (min-width:431px) {
    .app-card img {
        width: 64px
    }
    .page {
        padding-right: 10px;
        padding-left: 10px
    }
    .app-grid {
        column-gap: 12px
    }
    .local-card {
        grid-template-columns: 104px minmax(0, 1fr)
    }
    .local-cover {
        height: 136px
    }
}

@media (max-width:374px) {
    .page {
        padding-right: 7px;
        padding-left: 7px
    }
    .notice {
        height: 38px;
        font-size: 12px
    }
    .section-title strong {
        font-size: 13px
    }
    .app-grid {
        column-gap: 7px;
        row-gap: 14px
    }
    .app-card img {
        width: 56px;
        border-radius: 9px
    }
    .app-card strong {
        font-size: 12px
    }
    .app-card span {
        width: 52px;
        height: 21px;
        font-size: 10px
    }
    .live-card {
        gap: 8px;
        padding: 8px
    }
    .live-card img {
        width: 60px;
        height: 60px
    }
    .live-card strong {
        font-size: 15px
    }
    .live-card em {
        width: 48px;
        height: 25px;
        font-size: 11px;
        line-height: 25px
    }
    .online-list,
    .girls {
        gap: 8px
    }
    .online-info,
    .girl-info {
        padding-right: 8px;
        padding-left: 8px
    }
    .girl-img .girl-b .btn {
        width: 74px
    }
    .local-card {
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 8px;
        padding: 8px
    }
    .local-cover {
        height: 118px
    }
    .local-top h3 {
        font-size: 15px
    }
    .local-top em {
        width: 46px;
        height: 25px;
        font-size: 11px;
        line-height: 25px
    }
    .local-tags span {
        font-size: 10px
    }
    .local-line {
        font-size: 11px;
        padding: 5px 6px
    }
    .local-line b {
        width: 52px
    }
    .footer-item {
        font-size: 10px
    }
    .footer-item i {
        width: 24px;
        height: 24px;
        -webkit-mask-size: 23px 23px;
        mask-size: 23px 23px
    }
}
