@charset "UTF-8";

.mod-head {
    background-image: linear-gradient(to bottom, #276cae 0%, rgba(39, 108, 174, 0.75) 30%, rgba(39, 108, 174, 0.5) 60%, rgba(39, 108, 174, 0.25) 100%);
}

/* 基础模块样式 */
.module {
    background: #fff;
    box-shadow: 0 0 14px 0 rgba(0, 0, 0, .08);
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    margin-bottom: 25px;
    overflow: hidden;
    font-family: 'Helvetica Neue', Arial, sans-serif;
}
.module .hd {
    position: relative;
    padding: 15px;
    border-bottom: 1px solid #f0f0f0;
    background: linear-gradient(to right, #f8f8f8, #fff);
    color: #333;
    font-size: 18px;
    font-weight: 600;
    overflow: hidden;
}

.module .hd .title {
    position: relative;
    display: inline-block;
    padding-left: 15px;
    font-weight: bold;
    font-size: 16px;
}

.module .hd .title:before {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 4px;
    height: 18px;
    content: "";
    margin: -10px 2px;
    vertical-align: middle;
    background: #2095f2;
    border-radius: 2px;
}
.module .hd .title strong {
    font-weight: bold;
    color: #fc9000;
}

.module .bd {
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

/* 底部链接样式 */
.module .ft { padding: 10px; border-top: 1px solid #f0f0f0; /*background-color: #f9f9f9;*/}
.module .box {margin-bottom: 20px}
.module .ft .c-hd {margin-bottom: 20px;border-bottom: 1px dotted #e8e8e8}
.module .ft .c-hd .title {
    position: relative;
    bottom: -12px;
    padding-right: 20px;
    padding-left: 5px;
    display: inline-block;
    background: #fff;
    line-height: 24px;
    font-weight: bold;
    font-size: 16px
}
.module .ft .c-bd ul {overflow: hidden}


.module .ft .ft-link a {
    color: #2095f2;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.2s;
}

.module .ft .ft-link a:hover {
    color: #fc9000;
    text-decoration: underline;
}

/* 提示信息样式 */
.module .ft-tips {
    padding: 12px 20px;
    background-color: #f5f9ff;
    border-top: 1px solid #e6f0ff;
    font-size: 12px;
    color: #666;
    line-height: 1.5;
}

.module .ft-tips .by_tips {
    position: relative;
    padding-left: 20px;
}

.module .ft-tips .by_tips:before {
    content: "ℹ️";
    position: absolute;
    left: 0;
    top: 0;
}







.mod-weather {
    padding: 15px 20px;
    margin-bottom: 15px;
    background: rgba(255, 255, 255, .15);
    border-radius: 8px
}
.mod-weather img, .mod-weather span {
    vertical-align: middle
}
.mod-weather .hd {
    line-height: 30px;
    color: rgba(255, 255, 255, .8)
}
.mod-weather .bd {
    position: relative;
    color: #fff
}
.mod-weather .bd span {
    margin-right: 20px
}
.mod-weather .bd .temperature {
    line-height: 48px;
    font-weight: bold;
    font-size: 40px
}
.mod-weather .bd .name {
    line-height: 48px;
    font-size: 22px
}
.mod-weather .bd .icon {
    float: right;
    margin-top: -15px
}
.mod-weather .bd .tag {
    display: inline-block;
    padding: 3px 10px 3px 3px;
    line-height: 18px;
    background: rgba(255, 255, 255, .15);
    border-radius: 10px
}
.mod-weather .bd .air:before {
    content: "";
    float: left;
    width: 18px;
    height: 18px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    margin-right: 10px
}
/* 空气质量等级基础样式 */
.mod-weather .bd [class^="air-level"] {
    position: relative;
    padding-left: 24px;
    min-height: 20px;
    display: inline-flex;
    align-items: center;
    border-radius: 4px;
    color: #fff;
    font-weight: 500;
}
/* 统一图标样式 */
.mod-weather .bd [class^="air-level"]:before {
    content: "";
    position: absolute;
    left: 8px;
    width: 16px;
    height: 16px;
    background-size: contain;
    background-repeat: no-repeat;
    filter: brightness(0) invert(1); /* 图标反白 */
}
/* 各等级颜色配置 */
.mod-weather .bd .air-level1 {
    background-color: #a3d765;
}
.mod-weather .bd .air-level2 {
    background-color: #f0cc35;
}
.mod-weather .bd .air-level3 {
    background-color: #f1ab62;
}
.mod-weather .bd .air-level4 {
    background-color: #ef7f77;
}
.mod-weather .bd .air-level5 {
    background-color: #b28ccb;
}
.mod-weather .bd .air-level6 {
    background-color: #ad788a;
}
.mod-weather .bd [class^="air-level"]:before {
    content: "★"; /* 或"●"、"◆"等符号 */
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    background-image: none !important; /* 覆盖原图片设置 */
}
.mod-weather .bd .warning {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    padding: 0 12px;
    border-radius: 18px;
    font-size: 14px;
    color: #fff;
    margin-right: 24px;
    cursor: pointer;
    position: relative
}
.mod-weather .bd .warning-level01 {
    background-color: #86c5f7
}
.mod-weather .bd .warning-level02 {
    background-color: #f5d271
}
.mod-weather .bd .warning-level03 {
    background-color: #ef8c6b
}
.mod-weather .bd .warning-level04 {
    background-color: #ec807c
}
.mod-weather .ft {
    line-height: 30px;
    color: rgba(255, 255, 255, .8)
}
.mod-weather .ft span {
    margin-right: 20px
}
.mod-weather .ft-tips {
    margin-top: 15px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.7);
    display: flex;
    gap: 4px;
    justify-content: space-between;
}
.mod-weather .by_update {
    font-style: italic;
}



.mod-map .hd {
    border-bottom: none;
    text-align: center
}
.mod-map .hd p {
    line-height: 22px;
    font-size: 14px;
    color: #888
}
.mod-map .bd {
    overflow: hidden
}
.mod-map .bd .map {
    float: left;
    width: 560px;
    padding: 50px 0 20px 20px;
    background: #e9f4ff
}
.mod-map .bd .list {
    margin-left: 600px;
    overflow: hidden
}
.mod-map .bd dl {
    position: relative;
    bottom: -1px;
    padding: 5px 0;
    border-bottom: 1px dotted #f0f0f0;
    line-height: 24px
}
.mod-map .bd dl dt {
    display: block;
    width: 80px;
    padding: 0 12px;
    margin-bottom: 5px;
    background: #f5f5f5;
    text-align: center;
    font-weight: bold;
    border-radius: 4px
}
.mod-map .bd dl dd {
    display: inline-block
}
.mod-map .bd dl dd a {
    margin: 0 5px
}
.mod-map .bd dl dd a:hover {
    text-decoration: underline;
    color: #2095f2
}
.mod-map .c-bd li {
     float: left;
     width: 15%
 }
.mod-map .c-bd li a {
    display: block;
    margin: 0 1px 2px;
    height: 30px;
    background: #f8f8f8;
    line-height: 30px;
    text-align: center;
    color: #484848;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.mod-map .c-bd li a:hover {
    background: #e9f4ff
}
.mod-map .ft { margin: 0 20px; display: flex; flex-wrap: wrap; flex-direction: column;}


.mod-city .bd .field-wrapper {
    padding: 3px 0;
    line-height: 32px;
    overflow: hidden
}
.mod-city .bd .field-wrapper .field-title {
    float: left;
    width: 120px;
    height: 32px;
    background: #f8f8f8;
    border-radius: 3px;
    line-height: 32px;
    text-align: center;
    font-weight: bold
}
.mod-city .bd .field-wrapper .field-content {
    margin-left: 135px
}
.mod-city .bd .field-wrapper a {
    display: inline-block;
    padding: 0 10px;
    text-align: center
}
.mod-city .ft {
    background: #f8f8f8;
    border-top: 1px solid #f0f0f0
}
.mod-city .ft a {
    display: block;
    line-height: 40px;
    text-align: center
}


.mod-world .bd .box {
    margin-bottom: 25px
}
.mod-world .bd .title {
    margin-bottom: 10px;
    line-height: 40px;
    text-align: center;
    font-size: 18px;
    font-weight: bold
}
.mod-world .bd .title span {
    display: inline-block;
    padding: 0 20px;
    background: #f8f8f8;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .075)
}
.mod-world .bd .list {
    overflow: hidden
}
.mod-world .bd .list li {
    float: left;
    width: 20%
}
.mod-world .bd .list li a {
    display: block;
    padding: 0 10px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    color: #484848;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}
.mod-world .bd .list li a:hover {
    text-decoration: underline;
    color: #2095f2
}


.mod-link .bd {
    line-height: 24px
}

.mod-link .bd a {
    white-space: nowrap;
    margin: 0 5px
}



.mod-list .bd .nav ul {
    zoom: 1
}

.mod-list .bd .nav ul:before, .mod-list .bd .nav ul:after {
    content: "";
    display: table
}

.mod-list .bd .nav ul:after {
    clear: both;
    overflow: hidden
}

.mod-time {
    padding: 15px 20px;
    margin-bottom: 10px;
    background: rgba(255, 255, 255, .15);
    border-radius: 8px
}

.mod-time .bd {
    overflow: hidden;
    color: rgba(255, 255, 255, .8)
}

.mod-time .bd .panel-left {
    float: left;
    width: 240px;
    line-height: 24px
}

.mod-time .bd .panel-left .title {
    line-height: 36px;
    font-size: 20px;
    font-weight: bold;
    color: #fff
}

.mod-time .bd .panel-right {
    margin-left: 260px;
    line-height: 24px;
    text-align: right
}

.mod-time .bd .panel-right .time-box {
    display: inline-block;
    text-align: center
}

.mod-time .bd .panel-right .time-box span {
    display: inline-block;
    line-height: 48px;
    vertical-align: middle;
    font-size: 28px;
    font-weight: bold
}

.mod-time .bd .panel-right .time-box .time-span {
    width: 36px;
    padding: 0 15px;
    background: rgba(255, 255, 255, .1);
    text-align: center;
    border-radius: 8px;
    color: #fff
}


.mod-trend {
    margin-top: -25px
}

.mod-trend .bd {
    padding: 10px 15px
}

.mod-trend .bd .chart {
    position: absolute;
    left: 0;
    top: 70px;
    z-index: 0;
    height: 90px
}

.mod-trend .bd .scroll-bar {
    position: relative;
    overflow-x: auto
}

.mod-trend .bd .scroll-bar::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #fafafa
}

.mod-trend .bd .scroll-bar::-webkit-scrollbar-thumb {
    background-color: #dbdbdb;
    border-radius: 4px
}

.mod-trend .bd ul {
    display: flex;
    flex-direction: row;
    position: relative;
    z-index: 1
}

.mod-trend .bd li {
    min-width: 60px;
    border-right: 1px solid rgba(0, 0, 0, .05)
}

.mod-trend .bd li:last-child {
    border-right: none
}

.mod-trend .bd .item {
    padding: 10px 5px;
    line-height: 24px;
    text-align: center;
    user-select: none
}

.mod-trend .bd .item:hover {
    background: rgba(0, 0, 0, .025)
}

.mod-trend .bd .item .c-bd {
    height: 100px
}

.mod-trend .bd .item .c-ft {
    line-height: 24px;
    color: #666
}

.mod-list .hd {
    text-align: center
}

.mod-list .hd h1 {
    line-height: 32px;
    font-weight: bold;
    font-size: 20px
}

.mod-list .hd p {
    line-height: 22px;
    font-size: 14px;
    color: #888;
    margin-bottom: 10px
}

.mod-list .bd {
    overflow: hidden
}

.mod-list .bd .nav {
    margin-top: -5px;
    margin-bottom: 25px;
    text-align: center
}

.mod-list .bd .nav ul {
    display: inline-flex;
    background: #f5f8fa;
    line-height: 32px;
    border: 1px solid #e4eaee;
    border-radius: 6px;
    overflow: hidden
}

.mod-list .bd .nav li {
    flex: 1;
    margin-left: -1px;
    border-left: 1px solid #e4eaee
}

.mod-list .bd .nav li a {
    position: relative;
    display: block;
    padding: 0 15px;
    white-space: nowrap;
    font-size: 14px;
    color: #546d7e
}

.mod-list .bd .nav li.active a {
    background: #546d7e;
    color: #fff
}

.mod-list .bd .box {
    margin-bottom: 15px
}

.mod-list .bd .c-hd {
    padding: 5px 15px;
    margin-bottom: 5px;
    background: #427fb8;
    line-height: 32px;
    border-radius: 5px;
    color: #fff
}

.mod-list .bd .c-hd a {
    color: #fff
}

.mod-list .bd .c-hd .title {
    font-size: 15px;
    font-weight: bold
}

.mod-list .bd .c-hd .more {
    float: right;
    color: #eee;
    overflow: hidden
}

.mod-list .bd .c-hd .more span, .mod-list .bd .c-hd .more img {
    vertical-align: middle
}

.mod-list .bd .c-hd .more span.icon {
    float: left;
    margin-right: 5px;
    height: 32px;
    line-height: 32px
}

.mod-list .bd.c-hd .more span.info {
    float: left;
    line-height: 16px
}

.mod-list .bd .c-hd .more span.info span {
    display: block
}

.mod-list .bd .c-hd .more span.info span.temp {
    font-size: 13px;
    color: rgba(255, 255, 255, .6)
}

.mod-list .bd .c-bd ul {
    overflow: hidden
}

.mod-list .bd .c-bd li {
    float: left;
    width: 20%;
    line-height: 28px
}

.mod-list .bd .c-bd li a {
    display: block;
    padding: 0 15px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.mod-list .bd .table-inner {
    width: 100%;
    margin-bottom: 20px;
    overflow-x: auto;
    margin-right: 10px;
}

.mod-list .bd .table-inner table {
    width: 100%;
    color: #384c78
}

.mod-list .bd .table-inner table tr {
    border-bottom: 1px solid #f8f8f8
}

.mod-list .bd .table-inner table td,th {
    padding: 8px 10px
}

.mod-list .bd .table-inner p span, .mod-list .bd .table-inner p img {
    margin: 0 3px
}

.mod-list .bd .table-inner p.date {
    color: #8a9baf
}


.mod-list .ft {
    margin: 0 20px;
    padding-bottom: 20px
}

.mod-list .ft .box .c-hd {
    margin-bottom: 20px;
    border-bottom: 1px dotted #e8e8e8
}

.mod-list .ft .box .c-hd .title {
    position: relative;
    bottom: -12px;
    padding-right: 20px;
    padding-left: 5px;
    display: inline-block;
    background: #fff;
    line-height: 24px;
    font-weight: bold;
    font-size: 16px
}

.mod-list .ft .box .c-bd {
    padding: 10px
}

.mod-list .ft .box .c-bd .input-text {
    width: 160px;
    height: 20px;
    padding: 5px 10px;
    margin: 0 3px;
    border: 1px solid #dbdbdb;
    border-radius: 3px;
    vertical-align: middle;
    outline: none
}

.mod-list .ft .box .c-bd .input-button {
    display: inline-block;
    width: 80px;
    height: 32px;
    border: 1px solid #ccc;
    background: -moz-linear-gradient(top, #fefefe, #ededed);
    background: -o-linear-gradient(left top, left bottom, from(#fefefe), to(#ededed));
    background: -webkit-gradient(linear, left top, left bottom, from(#fefefe), to(#ededed));
    line-height: 28px;
    vertical-align: middle;
    font-size: 15px;
    color: #333;
    cursor: pointer;
    border-radius: 3px;
    outline: none;
    box-sizing: border-box;
    -webkit-appearance: none
}

.mod-list .ft .box .c-bd .link {
    margin-left: 25px
}

.mod-list .ft .box .c-bd .link a {
    margin: 0 4px
}

.mod-list .ft .box .c-ft {
    padding: 10px
}

.mod-list .ft .box .c-ft ul {
    overflow: hidden
}

.mod-list .ft .box .c-ft p {
    line-height: 30px
}

.mod-list .ft .box .c-ft li {
    float: left;
    width: 16.6%
}

.mod-list .ft .box .c-ft li a {
    display: block;
    margin: 0 1px 2px;
    height: 30px;
    background: #f8f8f8;
    line-height: 30px;
    text-align: center;
    color: #484848;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.mod-list .ft .box .c-ft li a:hover {
    background: #e9f4ff
}

.mod-info .bd .table-inner table {
    width: 100%;
    table-layout: fixed;
    color: #546d7e
}

.mod-info .bd .table-inner table thead {
    background: #f5f8fa
}

.mod-info .bd .table-inner table td, .mod-info .bd .table-inner table th {
    border: 1px solid #e4eaee;
    line-height: 20px;
    text-align: center
}

.mod-info .bd .table-inner table th {
    padding: 5px
}

.mod-info .bd .table-inner table td {
    padding: 8px 5px
}

.mod-info .bd .table-inner table td a {
    color: #666
}

.mod-info .bd .table-inner table td a:hover {
    color: #2095f2
}

.mod-other .bd {
    padding: 15px
}

.mod-other .bd ul {
    overflow: hidden
}

.mod-other .bd li {
    float: left;
    width: 20%
}

.mod-other .bd li a {
    display: block;
    margin: 0 1px 2px;
    height: 30px;
    background: #f8f8f8;
    line-height: 30px;
    text-align: center;
    color: #484848;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.mod-other .bd li a:hover {
    background: #e9f4ff
}


/*文章类*/
.module-article .bd p {
    width: 100%;
    margin: 0;
    padding: 8px 10px;
    color: #34495e;
    font-size: 14px;
    position: relative;
    line-height: 1.2;
}
/*.module-article .bd p:before {*/
/*    content: "•";*/
/*    color: #3498db;*/
/*    position: absolute;*/
/*    left: 0;*/
/*    font-weight: bold;*/
/*}*/
.module-article .bd p strong,
.module-article .bd p em {
    color: #e74c3c;
    font-style: normal;
    font-weight: 600;
}
.module-article .bd p.time-period {
    background: #f8fafd;
    border-left: 3px solid #3498db;
    padding: 10px 15px;
    border-radius: 0 4px 4px 0;
    margin-left: -14px;
}
.module-article [itemprop="weatherCondition"] {
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    background-color: #e3f2fd;
    color: #1976d2;
}
.module-article [itemprop="temperature"] {
    font-weight: 600;
    color: #e53935;
    white-space: nowrap;
}
.module-article .bd [itemprop="precipitation"]:after {
    content: "💧" attr(data-precipitation) "mm";
    font-size: 13px;
    color: #2196f3;
    margin-left: 10px;
}
.bd [itemprop="unitCode"]{
    font-size: 12px;
}

.module-article img{
    max-width: 280px;
}

/*插件天气*/
.mod-plugin .hd {
    padding: 16px 20px;
    background: linear-gradient(135deg, #3498db, #969da3);
    color: white;
    text-align: center;
    position: relative;
}
.mod-plugin .bd {
    padding: 10px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}
.mod-plugin .weather-main {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 10px;
}
.weather-icon {
    width: 50px;
    height: 50px;
    object-fit: contain;
}
.mod-plugin .temp-info {
    flex: 1;
}
.mod-plugin .current-temp {
    font-size: 24px;
    font-weight: 600;
    line-height: 1;
}
.mod-plugin .current-temp em {
    font-style: normal;
    color: #e74c3c;
}
.mod-plugin .weather-desc {
    font-size: 16px;
    margin-top: 6px;
    color: #34495e;
}
.mod-plugin .temp-range {
    color: #7f8c8d;
    margin-left: 8px;
}
.mod-plugin .weather-details {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    padding: 12px 0;
    border-top: 1px dashed #e0e6ed;
    border-bottom: 1px dashed #e0e6ed;
}
.mod-plugin .detail-item {
    font-size: 12px;
    color: #34495e;
}
.detail-item em {
    font-style: normal;
    color: #2c3e50;
    font-weight: 500;
}
.mod-plugin .hd .by_tips {
    font-size: 12px;
    opacity: 0.8;
    margin-top: 4px;
}


@media screen and (max-width: 727px) {
    .module .bd {
        padding: 15px 10px;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .mod-weather {
        padding: 12px 15px
    }

    .mod-weather .hd {
        line-height: 26px;
        font-size: 13px
    }

    .mod-weather .bd span {
        margin-right: 10px
    }

    .mod-weather .bd .temperature {
        line-height: 36px;
        font-size: 32px
    }

    .mod-weather .bd .name {
        line-height: 36px;
        font-size: 16px
    }

    .mod-weather .bd .tag {
        zoom: .75
    }

    .mod-weather .bd .icon {
        position: absolute;
        right: -15px;
        top: -20px;
        float: none
    }

    .mod-weather .bd .icon img {
        width: 40px;
        height: 40px
    }

    .mod-weather .ft {
        line-height: 26px;
        white-space: nowrap;
        font-size: 13px
    }

    .mod-weather .ft img {
        width: 16px;
        height: 16px
    }

    .mod-weather .ft span {
        margin-right: 10px;
        white-space: nowrap
    }

    .mod-map .hd p {
        line-height: 20px;
        font-size: 13px
    }

    .mod-map .bd .map {
        float: none;
        width: auto;
        max-width: 600px;
        padding: 30px 0 10px 15px;
        margin: 0 auto
    }

    .mod-map .bd .list {
        margin-left: 0
    }

    .mod-map .bd dl dt {
        display: block;
        width: auto;
        text-align: center
    }

    .mod-map .ft {
        margin: 0 10px;
        padding: 2px;
    }

    .mod-map .c-bd li {
        width: 25%
    }

    .mod-city .hd {
        padding: 10px 15px
    }

    .mod-city .bd .field-wrapper {
        line-height: 30px
    }

    .mod-city .bd .field-wrapper .field-title {
        float: none;
        width: auto
    }

    .mod-city .bd .field-wrapper .field-content {
        margin-left: 0
    }

    .mod-world .bd .list li {
        width: 50%
    }
}




.by_24time {border: 1px solid #e5e5e5;}
.hours24-data-tb {
    width: 100%;
    border-radius: 6px;
    margin-top: 9px;
    position: relative;
    overflow-x: auto;
}
.hours24-list {
    zoom: 1;
    /*width: 1704px;*/
    overflow: hidden;
    display: inline-flex;
    list-style: none;
    height: 240px;
}
.hours24-list-item {
    height: 100%;
    text-align: center;
    position: relative;
    overflow: hidden;
    display: block;}
.hours24-list li {
    height: 240px;
    width: 67px;
    padding-right: 1px;
    float: left;
    position: relative;
    list-style: none;
}
.hours24-list-item em {
    font-size: 14px;
    color: #666;
    margin-top: 0;
    height: 20px;
    line-height: 20px;
    margin-top: 11px;
    display: block;
    text-align: center;
}
.hours24-list-item i {
    margin: 0 auto;
    width: 32px;
    height: 32px;
    margin-top: 13px;
    margin-bottom: 91px;
    display: block;
    text-align: center;
    color: #fff;
    font-size: 14px;
}
.hours24-list-item i img{
    width: 32px;
}
.hours24-list-item b {
    font-size: 12px;
    color: #222;
    display: block;
    text-align: center;
    height: 18px;
    font-weight: 400;
    font-style: normal;
}
.hours24-list-item span {
    height: 13px;
    line-height: 13px;
    width: 54px;
    bottom: 17px;
    border-radius: 0;
    border-color: transparent;
    padding: 0 6px;
    color: #26ab45;
    background-color: #d4f6dc;
    border: 1px solid rgba(255, 255, 255, .5);
    position: absolute;
    display: block;
    text-align: center;
}
.hours24-list-item .rain {
    background: -webkit-gradient(linear,left top,left bottom,from(#f2f9ff),to(rgba(242,249,255,0)));
    background: -webkit-linear-gradient(top,#f2f9ff,rgba(242,249,255,0));
    background: linear-gradient(to bottom,#f2f9ff,rgba(242,249,255,0));
}

.hours24-chart {
    height: 90px;
    top: 60px;
    position: absolute;
    width: 1627px;
    height: 95px;
}

.left-swipe-btn, .right-swipe-btn {
    width: 26px;
    height: 50px;
    position: absolute;
    top: 50%;
    margin-top: -25px;
    z-index: 2;
}
.left-swipe-btn {
    left: 0;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAABkCAQAAABj/9uXAAACnUlEQVR42u3aTUhUURQHcClp16qSalELCyIoCIoIWtjHnHNnzEEqhwIp/GhhzKJxoQ4xdRBE3LgSWwxBZAjtay8u3bhxI7gSV7pwhoeg+PGCydeENTP3470/KnPv9g0/5r37ce45t6Gh3uoN3jjHg5Sht6qHn6mWxI3YxY5TkUAkBzt/4F5+HG8OGfwX+gPm6EX8ektj5NB+H1LJxHkEVOqxzsRlCFTqPW2XMJCQqKfJ0xCIRGXVPTkBgEr9tcX/soKEB2JXIVAJewCCSKi94yQGEtWpvVC5QSTcq0m5QiT8Sms9dIdIOKUxs8KASLgVBJGomyCI3lMTBhJOVx1/4UEkikEQfeQLGEj4TcWBHi5EkrgNglR/hXUibIhE3QFBlPnv5hEBJPFbIIi6UZA8OgOC6GEI0JfvXsErfvpWfUA4Qz9++nu+7/teocaTTU7Q7Iy/37xijWfvWkNK5ucCZnfn83SNp19aQsnhxYWA2d6anKr5i+yB5VWPSY0sLwXM5sZoXuc3bWeNoa6x1ZXyt8lOaL6Fa4ZQenx9LWDW19Lj2t/0vhGUnfCKAbO60jVmEpkbQKP5zY2AWV5KjTiseNUenZza3gqYxYXksOHk7tOE8tO7OwEzP6fM44d3mlD528zOWAUqg7pQwRHKoV5dDjQYtF+d6/DWHgzOE7YPtAQZTFjHRbUdtE0YLqoVNr6vEWwTdlu51cZnFZzYbeV/h1t7WuGWdXBiGEC6hFuGJ4pzGChzlIL8w3Rs6T5mR0vUYRl0/IclNEApGlTSCZVGAyUGUalOVPIWlI4GJdhBJQNQEQRU1kEVqjClN0gxkQeeQMqjiIIvqISNKcojrhkgLk5EfxUk8sstv6/r8JWQr+uULyDR80gvINXboW+/ADCmm55h4EaSAAAAAElFTkSuQmCC);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}
.right-swipe-btn {
    right: 0;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAABkCAQAAABj/9uXAAAClUlEQVR42u3av2tTURQH8JCGbJ3Uog46qCCCgqCI4BB/9JybaB+ivqBQlJo4KBmsg20o0UehlC6dSh2CIFYK7rqXjl26dCl0Kp3aoQlpoaU/nouvYk3eu7/eFwvJ+wM+Sd659557zkn4CcyTaENtKFbITXefzl0WGX4sCvSG+nmAK5aB7Dm+x0X+QN7hxxKRSWUv0VOu/AtYhHInhUODrQkrUO5sd28UYQz1nBEFOcQAcjrFI3lEE/KS4qYoqzEakNNJL1QRDejBBX6vwyhCfFsPUYLcDnqoz0hDblr0mjCSkJvmohkjBWVS/NyUkYC8JOfNGQmI79tgIiFxxQ4TAVEXDQEgN80lW0woJNgeEwLxKfoIgLwkv7LJtIRy1+wyLaBMSryDQOK6baYp5HZQPwTKXrXPNIWoAIHuHouDaQLRHRQkHQifvm3UG7Uv37Ug6pL/jo2a7/v+/v6PnzrQDXloo+7//szOKEPimTz0eXpvN6Dm54QK5CVJKaeenNrZDqjFBWdYGuo5rhpLo9WtzYBaXsqPSEJ0UT1syxONg3e1utI3JgWJWzorpDS+vhZQ62ulcZlfpJld942trgRUo16eiIZe6q77/MjyUkBtbY5Wo6DX+luMM7y4EFA725NfQyF+a7KbCW9+LqD2dqvTYdCA6dY5O3PwrmphUOVIQKC/7lAwTMUUDKDwBi1Y0BYE2lRBxwTo4IMd5bDkBJZuGSWQ2RPxJMRGKfFRSfJh1xaTFOV/vVrCLsuw6z+woAEr0QCLTrAyGrAwCCx1woq3wHI0sMAObBnAmiDAtg6wUQVsvQGbidD2KLDhC2xhA5vyf8YMqACBYIMT0FEQ6HDLX3vi+ZjHdZoPINETLsYygNQeEovl+QV6MOTDwW13kwAAAABJRU5ErkJggg==);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}


.wea-aqi-1 {
    padding: 0 6px;
    height: 16px;
    color: #19b863;
    background-color: rgba(10, 193, 96, .05);
    border-radius: 3px;
    border: 1px solid rgba(10, 193, 96, .2)
}
.wea-aqi-2 {
    padding: 0 6px;
    height: 16px;
    color: #f7b307;
    background-color: rgba(241, 172, 0, .05);
    border-radius: 3px;
    border: solid 1px rgba(241, 172, 0, .2)
}
.wea-aqi-3 {
    padding: 0 6px;
    height: 16px;
    color: #ff8a1b;
    background-color: rgba(233, 118, 0, .05);
    border-radius: 3px;
    border: solid 1px rgba(233, 118, 0, .2)
}
.wea-aqi-4 {
    padding: 0 6px;
    height: 16px;
    color: #f85c58;
    background-color: rgba(255, 100, 91, .05);
    border-radius: 3px;
    border: solid 1px rgba(255, 100, 91, .2)
}
.wea-aqi-5 {
    padding: 0 6px;
    height: 16px;
    color: #d62670;
    background-color: rgba(217, 51, 120, .05);
    border-radius: 3px;
    border: solid 1px rgba(217, 51, 120, .2)
}
.wea-aqi-6 {
    padding: 0 6px;
    height: 16px;
    color: #a70069;
    background-color: rgba(157, 16, 104, .05);
    border-radius: 3px;
    border: solid 1px rgba(157, 16, 104, .2)
}

@media screen and (min-width: 800px) {
    .by_24time{max-width: 920px;}
}




/*天气实况*/
.by_crumb,.by_crumb a{
    color: #fff;!important;
}
.hd-line{
    margin-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding-bottom: 8px;
}
/*天气N天列表*/
.by_deta {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 12px;
}
.by_deta li {
    padding: 8px 10px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.4;
    display: flex;
}
.by_deta li:before {
    color: rgba(255, 255, 255, 0.6);
    margin-right: 6px;
}
.by_deta li.precipitation {
    grid-column: span 2;
    background: rgba(255, 215, 0, 0.15);
    font-weight: 500;
}

/*公共UL*/
.flex-ul,.flex-ul ul{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;!important;
    justify-content: space-between;
}
.flex-ul ul li{
    list-style-type: none;
    padding: 5px 10px;
 }


/* 公共天气链接 */
.weather-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}
.weather-links a {
    padding: 6px 12px;
    background: #f5f7fa;
    border-radius: 4px;
    color: #3498db;
    text-decoration: none;
    font-size: 13px;
    transition: all 0.2s;
}
.weather-links a:hover {
    background: #3498db;
    color: white;
}




/* 表格容器样式 */
.table-inner {
    width: 100%;
    margin-bottom: 20px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    box-shadow: 0 0 0 1px #f0f0f0 inset;
    border-radius: 4px;
}
.table-inner table {
    width: 100%;
    min-width: auto; /* 600px */
    color: #384c78;
    border-collapse: collapse;
    font-family: 'Helvetica Neue', Arial, sans-serif;
    white-space: nowrap;
}
@media screen and (max-width: 727px) {
    .table-inner table {
        font-size: 13px;
    }
}
.table-inner table tr {
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.2s;
}
.table-inner table tr:hover {
    background-color: #f9f9f9;
}
.table-inner table td,th {
    padding: 10px 8px;
    text-align: center;
    vertical-align: middle;
    border-right: 1px solid #f5f5f5;
}
.table-inner table td:first-child {
    font-weight: 500;
    color: #2c3e50;
    border-left: 1px solid #f5f5f5;
}
.table-inner .week {
    font-weight: 600;
    color: #3498db;
    margin-bottom: 4px;
}
.table-inner .date {
    font-size: 12px;
    color: #7f8c8d;
}
.table-inner table img {
    vertical-align: middle;
    margin: 0 2px;
}
.table-inner table td:nth-child(3) {
    font-weight: 600;
    color: #e74c3c;
}
.table-inner .td-div{
    display: flex;flex-wrap: wrap;justify-content: space-evenly;
}
.table-inner .td-div div{
    flex: 1 1 265px;padding-left:5px;
}


/*文章列表*/
article-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 20px;
}
.article-card {
    display: flex;
    flex-direction: column;
    border-radius: 6px;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border-bottom: 1px #efefef dashed;
    margin-bottom: 12px;
    padding-bottom: 12px
}
.article-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.article-link {
    text-decoration: none;
    color: inherit;
}
.img-container {
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
    border-radius: 6px 6px 0 0;
}
.article-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}
.article-card:hover .article-img {
    transform: scale(1.03);
}
.article-title {
    margin: 12px 0 8px;
    padding: 0 4px;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.article-meta {
    padding: 4px 4px 0 4px;
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 13px;
    color: #666;
}
.article-category {
    color: #1e88e5;
    text-decoration: none;
    transition: color 0.2s ease;
}
.article-category:hover {
    color: #0d47a1;
    text-decoration: underline;
}
.article-date {
    color: #757575;
}





.low{color: #1976d2;}
.high{color: #e53935;}
.tag{
    display: inline-block;
    padding: 0 8px;
    height: 24px;
    line-height: 24px;
    font-weight: 400;
    font-size: 13px;
    text-align: center;
    color: #007bff;
    background: #e5f2ff;
    margin-right: 3px;
    border-radius: 2px;
}
.article-ul{width: 100%}
.article-ul li{margin-top: 15px;border-bottom: 1px solid #efefef;}
.article-ul .article-title{display: table-cell;vertical-align: top;line-height: 24px;}
.article-ul .article_footer{text-align: right; color: #aaa; font-size: 13px;}
.pagination{
    display: inline-block;
    padding-left: 0;
    margin: 17px 0;
    border-radius: 3px;
}
.pagination a{
    background: none;
    border: 1px solid #3898d9;
    border-radius: 0.25em;
    padding: .5em .93em;
    font-size: 14px;
    margin: 0.3em;
}
.pagination a.active{
    color: #fff;
    background-color: #3898d9;
    border-color: #3898d9;
    cursor: default;
}
