/* 优化后的CSS样式 - 减少内联样式，统一管理 */

/* 主要字体样式 */
.wrapper {
    font-family: 'Arial Regular','YouYuan' !important;
    font-weight: 500;
}

/* 幻灯片隐藏类 - 替代内联的display: none */
.slider-hidden {
    display: none;
}

/* 白色背景类 - 替代内联的background-color: #fff */
.bg-white {
    background-color: #fff;
}

/* 左侧边距类 - 替代内联的margin-left: 20px */
.ml-20 {
    margin-left: 20px;
}

/* 右侧边距类 */
.mr-20 {
    margin-right: 20px;
}

/* 顶部边距类 */
.mt-20 {
    margin-top: 20px;
}

/* 底部边距类 */
.mb-20 {
    margin-bottom: 20px;
}

/* 响应式图片 - 确保图片自适应容器 */
.img-responsive {
    max-width: 100%;
    height: auto;
    display: block;
}

/* 清除浮动 */
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

/* 文本对齐类 */
.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

/* 加载动画 */
.loading {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* 优化按钮样式 */
.btn {
    transition: all 0.3s ease;
}

.btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* 优化链接样式 */
.link-hover {
    transition: all 0.3s ease;
    position: relative;
}

.link-hover::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -2px;
    left: 0;
    background-color: #333;
    transition: width 0.3s ease;
}

.link-hover:hover::after {
    width: 100%;
}

/* 响应式表格 */
.responsive-table {
    width: 100%;
    overflow-x: auto;
}

.responsive-table table {
    width: 100%;
    min-width: 640px;
}

/* 平滑滚动 */
html {
    scroll-behavior: smooth;
}

/* 焦点样式优化 */
button:focus,
input:focus,
textarea:focus,
select:focus {
    outline: 2px solid #3498db;
    outline-offset: 2px;
}

/* 高对比度模式支持 */
@media (prefers-contrast: high) {
    :root {
        --color-primary: #0000ff;
        --color-text: #000000;
        --color-background: #ffffff;
    }
}

/* 减少动画模式支持 */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* 地图容器样式 */
#map {
    width: 100%;
    height: 400px;
    min-height: 300px;
    border-radius: 4px;
    overflow: hidden;
}

/* 响应式地图容器 */
@media (max-width: 768px) {
    #map {
        height: 300px;
        min-height: 250px;
    }
}

/* 地图容器父元素样式 */
.contact-map {
    position: relative;
}

/* 地图加载动画 */
.map-loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
}