/* 全站 OpenSans：Regular(100-500) + Bold(600-900) 按字重自动切换 */
:root {
    --font-open-sans: "OpenSans", PingFang SC, Microsoft YaHei, Hiragino Sans GB, WenQuanYi Micro Hei, sans-serif;
}

@font-face {
    font-family: "OpenSans";
    src: url("/fonts/OpenSans-Regular.ttf") format("truetype");
    font-weight: 100 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "OpenSans";
    src: url("/fonts/OpenSans-Bold.ttf") format("truetype");
    font-weight: 600 900;
    font-style: normal;
    font-display: swap;
}

/* 兼容旧代码中独立的 family 名称 */
@font-face {
    font-family: "OpenSans Regular";
    src: url("/fonts/OpenSans-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "OpenSans Bold";
    src: url("/fonts/OpenSans-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* @font-face {
    font-family: "OpenSans Italic";
    src: url("/fonts/OpenSans-Italic.ttf");
    font-weight: 400;
    font-style: italic;
} */

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

blockquote,
body,
button,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
input,
li,
ol,
p,
pre,
td,
textarea,
th,
ul {
    padding: 0;
    margin: 0;
    font-size: 100%;
    box-sizing: border-box;
    font-family: var(--font-open-sans);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-open-sans);
}

dd,
dl,
dt,
li,
ol,
u,
ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

a,
address,
caption,
cite,
code,
dfn,
em,
i,
s,
strong,
th,
var {
    font-style: normal;
    text-decoration: none;
}

label input {
    vertical-align: middle;
}

a {
    text-decoration: none !important;
    color: #575757;
}

a:hover {
    text-decoration: none;
    color: #E93234;
}

a.hidefocus {
    outline: 0;
}

body {
    font: 12px/1.5 var(--font-open-sans);
    color: #000;
    background: #fff;
    margin-right: calc(100% - 100vw);
}

img {
    border: 0;
    vertical-align: middle;
}

.clear {
    clear: both;
    line-height: 0;
    font-size: 0;
    height: 0;
}

.clearfix:after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
    content: ".";
}

html {
    overflow-y: scroll !important;
    scrollbar-gutter: auto;
    /* position: relative !important;
    z-index: 1; */
}

@supports (overflow: overlay) {
    html {
        overflow-y: overlay !important;
    }
}

/* 显式粗体类（与 font-weight:600+ 效果一致） */
.openSansBold {
    font-family: var(--font-open-sans) !important;
    font-weight: 700 !important;
}

/* 语义化标签、表头、Vuetify 加粗工具类 */
b,
strong,
th,
.font-weight-bold,
.font-weight-semibold,
.font-weight-medium {
    font-family: var(--font-open-sans);
}

/* 内联 style 加粗 */
[style*="font-weight: bold"],
[style*="font-weight:bold"],
[style*="font-weight: 700"],
[style*="font-weight:700"],
[style*="font-weight: 600"],
[style*="font-weight:600"] {
    font-family: var(--font-open-sans) !important;
}

.ef223b { color: #ef223b; }
.f26432 { color: #f26432; }
.c9299f8 { color: #9299f8; }
.f9ae56 { color: #f9ae56; }
.ce65bf { color: #ce65bf; }
.f6af5c { color: #f6af5c; }
.f48260 { color: #f48260; }
.f3b762 { color: #f3b762; }
.icon-address_0112 { color: #66a6f6; }
.icon-reviews_0112 { color: #5bbd9c; }
.icon-viewed_0112 { color: #9dc7fa; }
.icon-setting { color: #63c0a1; }
.icon-feedback_0112 { color: #63c0a1; }
.abd3e3 { color: #abd3e3; }
.f58080 { color: #f58080; }
.a4a8ff { color: #a4a8ff; }
.fa7878 { color: #fa7878; }

/* 全站浮动滚动条：透明轨道 + 细滑块 */
* {
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 0, 0, 0.28) transparent;
}

*::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

*::-webkit-scrollbar-track {
    background: transparent;
}

*::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.28);
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: content-box;
}

*::-webkit-scrollbar-thumb:hover {
    background-color: rgba(0, 0, 0, 0.42);
}

*::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
}

*::-webkit-scrollbar-corner {
    background: transparent;
}

.disabled-select {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    -khtml-user-select: none;
    user-select: none;
}

/* 可滚动区域隐藏滚动条（保留滑动），用于横向 Tab 等 */
.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}
