@charset "utf-8";
/* CSS Document */
*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box}
*,body{padding:0px;	margin:0px;font-family: "微软雅黑";}
body{color:#fff;font-size: 16px; background: #033c76;
    background: -webkit-radial-gradient(50% 35%, farthest-corner,#034f8e,#034987,#02366d,#002353);
    background: radial-gradient(50% 35%, farthest-corner,#034f8e,#034987,#02366d,#002353);
    min-height: 100vh;
    overflow-x: hidden;
}
html,body{height: auto; min-height: 100%;}
html{
    background: #033c76;
    background: -webkit-radial-gradient(50% 35%, farthest-corner,#034f8e,#034987,#02366d,#002353);
    background: radial-gradient(50% 35%, farthest-corner,#034f8e,#034987,#02366d,#002353);
}
html {-webkit-text-size-adjust: 100%; text-size-adjust: 100%;}
li{ list-style-type:none;}
table{}
i{ margin:0px; padding:0px; text-indent:0px;}
img{ border:none; max-width: 100%;}
a{ text-decoration:none; color:#fff;}
a.active,a:focus{ outline:none!important; text-decoration:none;}
ol,ul,p,h1,h2,h3,h4,h5,h6{ padding:0; margin:0}
a:hover{ color:#06c; text-decoration: none!important}
.clearfix:after, .clearfix:before {display: table;content: " "}
 .clearfix:after {clear: both}
.pulll_left{float:left;}
.pulll_right{float:right;}
i{font-style: normal;}
.text-w{color: #ffe400}
.text-d{color: #ff6316}
.text-s{color: #14e144}
.text-b{color: #07e5ff}

.head{position: relative; height: 90px; margin: 0 15px; padding-right: 60px;}
.head h1{  font-size: 30px; letter-spacing: -2px; text-align: center; line-height: 90px; padding-right: 55px; color: #daf9ff;}
.head .menu{}
.head .menu ul{ font-size: 0;}

.head .menu li{ display: inline-block; position: relative;margin: 25px 15px;;}
.head .menu li a{ display: block; font-size: 18px; color: #fff; line-height: 40px; padding: 0 15px; }
.head .time{position: absolute; right: 0; line-height: 90px;}

.menu li:before,
.menu li:after{ position:absolute; width:10px; height:5px;opacity: .4; content: "";  border-top: 2px solid #02a6b5; top: -1px;border-radius: 2px;}
.menu li:before,.menu li a:before{border-left: 2px solid #02a6b5;left: -1px;}
.menu li:after,.menu li a:after{border-right: 2px solid #02a6b5; right: -1px;}
.menu li a{ position:relative;}
.menu li a:before,
.menu li a:after{ position:absolute; width:10px; height:5px; opacity: .4;  content: "";border-bottom: 2px solid #02a6b5; bottom:-1px;border-radius: 2px;}

.head .menu li a:hover{ color: #f4e925;}
.menu li a:hover:before,
.menu li a:hover:after,
.menu li:hover:before,
.menu li:hover:after{border-color:  #f4e925; opacity: 1;}

.head .menu li a.active{
    color: #59f39a;
    text-shadow: 0 0 10px rgba(89,243,154,.35);
}
.head .menu li a.active:before,
.head .menu li a.active:after,
.head .menu li.active:before,
.head .menu li.active:after{
    border-color: #59f39a;
    opacity: 1;
}

.mainbox{padding: 0px 10px;}
.nav1{margin-left: -6px; margin-right:-6px;}
.nav1>li{padding:0 6px; float: left;}

.box{ border:1px solid rgba(7,118,181,.5); box-shadow:inset 0 0 10px rgba(7,118,181,.4); margin-bottom: 12px; position: relative; overflow: hidden;}
.tit{ padding: 10px 10px 10px 25px;border-bottom:1px solid rgba(7,118,181,.7);font-size: 16px; font-weight: 500; position: relative;}
.tit:before,.tit01:before{position: absolute; content: ""; width: 6px; height: 6px; background: rgba(22,214,255,.9);box-shadow: 0 0 5px rgba(22,214,255,.9); border-radius: 10px; left: 10px; top: 18px;}

.tit:after,.box:before{ width: 100%; height: 1px; content: ""; position: absolute; left: 0; bottom:-1px; background:linear-gradient(to right,#076ead,#4ba6e0,#076ead); box-shadow: 0 0 5px rgba(131,189,227,1); opacity: .6}
.box:before{top: -1px;}

.boxnav{padding: 10px;}
.nav2{}
.nav2>li:first-child{border:none;}
.nav2>li{float: left;border-left:1px solid rgba(7,118,181,.2); height:240px; padding: 0 10px 10px 10px;}
.tit01{font-size: 16px; font-weight: 500; position: relative; padding-left: 15px;}
.tit01:before{ left: 3px; top: 8px;}

.ftechart{height: 200px;;}



.table1 th{ border-bottom: 1px solid #407abd; font-size: 14px; text-align: center; padding: 6px 0; color: rgba(255,255,255,.8)}
.table1 td{ border-bottom: 1px dotted#407abd;font-size: 12px; padding:6px 0;text-align: center; color: rgba(255,255,255,.6)}
.table1 tr:last-child td{border: none;}
.mapc{background: url(../images/bg3.png) no-repeat center center; background-size: 100% 100%}
.map{position: relative; height: 100%; padding-left: 0;}
.map img{}
.mapnav{position: absolute; left: 56px; top: 8px; z-index: 10;}
.mapnav div{ background: url(../images/bg1.png) no-repeat; background-size:100% auto;  width: 110px;text-align: center; padding: 20px 0; line-height: 120%;}
.mapnav div span{font-size: 14px; opacity: .6}
.mapnav div p{font-size: 20px; font-weight: bold; padding-top: 5px;}
.mapnav li{float: left; margin-right: 6px;}


.leidanav{margin-top: -5px;}
.leidanav li{float: left; width: 20%; text-align: center; border-left: 1px solid rgba(255,255,255,.1)}
.leidanav2 li{ width: 33.3333%}
.leidanav3 li{ width: 25%}
.leidanav li:first-child{border-left: none;}
.leidanav span{font-size: 12px; opacity: .6}

.leidanav p{font-size: 18px; color: #26a6ff }
.mapnav2{ position: absolute; left: 10px; bottom:0px; width: 40%; z-index: 10;}
.mapnav2 .box{}
.trend-main{position: relative; height: 100%; padding-left: 0;}
.ybp{width: 100%}
.ybp li{float: left; width: 50%; height: 120px; }
.duibi li{float: left; width: 25%; height: 200px; padding: 0; border: none;}

.btn{ position: absolute;  border-radius:2px; padding:4px 20px; opacity: .8;}
.btn1{border: 1px solid rgba(255,255,255,.5); background: #388665; left:35%; top: 30%;}
.btn2{ border: 1px solid rgba(255,255,255,.5); background: #297cc7;right:32%; top: 60%;}
.btn:hover{color: #fff; opacity:1;}
.btn1:before,.btn2:before{position: absolute; content: ''; width: 50px; height: 1px; background: #fff;}
.btn1:before{ transform: rotate(30deg); right: -65%; top: 100%}
.btn2:before{ transform: rotate(30deg); left: -65%; top: -10%}
.tit02{font-size: 14px; padding: 10px 0;}

.tagcloud { width:100%; height:90%!important; overflow: hidden;
  position: relative;

}
.tagcloud a {
  display: block;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  text-decoration: none;
  text-align: center;
	display: flex; align-items: center; justify-content: center;
  
}

.b01{
    width: 50px;
    height: 50px;
}
.b02{
    width: 80px;
    height: 80px;
}
.b03{
    width: 60px;
    height: 60px;

}
.b04{
    width: 70px;
    height: 70px;

}
.co01{  border: 2px solid rgba(5,118,254,1);   box-shadow: inset 0 0 20px rgba(5,118,254,1);}
.co02{border: 2px solid rgba(238,255,65,1);   box-shadow: inset 0 0 20px rgba(238,255,65,1);}
.co03{border: 2px solid rgba(26,121,181,1);   box-shadow: inset 0 0 20px rgba(26,121,181,1);}
.co04{border: 2px solid rgba(1,187,181,1);   box-shadow: inset 0 0 20px rgba(1,187,181,1);}
.co05{border: 2px solid rgba(255,138,0,1);   box-shadow: inset 0 0 20px rgba(255,138,0,1);}

.huati{ padding-top: 20px;}
.huati li{ font-size: 12px; line-height: 230%;}

.wancheng{display: flex; align-items: center; justify-content: center;}
.wancheng span{font-size: 14px; color: #fff;}
.wancheng h3{font-size: 20px; color:#00b4ff;}
.wancheng h3 i{font-size: 12px; color:#fff;}
.yuan{padding:5px;border-radius: 100%; margin-left: 10px; border: 2px solid rgba(0,99,169,.8);}
.yuan span{width: 60px; height: 60px; border-radius: 100%; background: rgba(0,99,169,.8); display: flex; align-items: center; justify-content: center; font-size: 20px;}

.ai-summary-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 10px;
}

.ai-summary-card{
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 12px;
    padding: 10px 10px 8px;
    background: linear-gradient(145deg, rgba(95,112,255,.35), rgba(38,58,105,.45));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 6px 16px rgba(0,0,0,.2);
}

.ai-summary-title{
    font-size: 12px;
    color: rgba(255,255,255,.75);
    margin-bottom: 6px;
}

.ai-summary-value{
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 6px;
}

.ai-summary-meter{
    height: 8px;
    border-radius: 999px;
    background: rgba(255,255,255,.15);
    overflow: hidden;
}

.ai-summary-meter span{
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, #00d2ff, #7a5bff);
}


/* responsive overrides for dashboard layout */
html, body {
    min-height: 100%;
}

.head {
    height: clamp(90px, 10vh, 130px);
}

.head h1,
.head .time {
    line-height: clamp(90px, 10vh, 130px);
}

.head h1 {
    font-size: clamp(28px, 2vw, 40px);
}

.mainbox {
    width: 100%;
}

.nav1,
.nav2 {
    display: flex;
    flex-wrap: wrap;
    margin-left: -6px;
    margin-right: -6px;
}

.nav1 > li,
.nav2 > li {
    float: none;
    min-width: 0;
}

.nav2 > li {
    flex: 1 1 25%;
    min-width: 260px;
}

/* override inline fixed heights so panels scale with viewport growth */
.boxnav[style*="height: 130px"] { height: clamp(130px, 20vh, 200px) !important; }
.boxnav[style*="height: 200px"] { height: clamp(200px, 28vh, 320px) !important; }
.boxnav[style*="height: 250px"] { height: clamp(250px, 34vh, 420px) !important; }
.boxnav[style*="height: 550px"] { height: clamp(550px, 72vh, 860px) !important; }

#echart1 { height: clamp(150px, 24vh, 280px) !important; }
#fb01, #fb02 { height: clamp(160px, 24vh, 280px) !important; }
#fb03, #fb04 { height: clamp(170px, 26vh, 320px) !important; }
#echart1, #echart3, #echart4, #sysx, #fb01, #fb03, #map {
    width: 100% !important;
    min-width: 0;
}

@media (max-width: 1200px) {
    .nav1 > li[style*="56%"],
    .nav1 > li[style*="22%"] {
        width: 100% !important;
    }

    .mapnav2 {
        width: 100%;
        position: static;
        margin-top: 8px;
    }

}

/* compact style for AI rank table: fit 10 rows in card */
.ai-rank-box {
    padding-top: 6px;
    padding-bottom: 6px;
    overflow-y: auto;
    overflow-x: hidden;
}

.ai-rank-table th {
    font-size: 13.4px;
    padding: 4px 0;
    line-height: 1.32;
}

.ai-rank-table td {
    font-size: 13.4px;
    padding: 4.6px 0;
    line-height: 1.32;
}

.channel-leidanav {
    margin-top: 4px;
    max-height: 128px;
    overflow-y: auto;
    overflow-x: hidden;
}

.channel-leidanav ul {
    display: flex;
    flex-wrap: wrap;
}

.channel-leidanav li {
    width: 20%;
    padding: 3px 0;
    border-left: 1px solid rgba(255,255,255,.1);
}

.channel-leidanav li:nth-child(5n+1) {
    border-left: none;
}

.channel-leidanav span {
    font-size: 10px;
}

.channel-leidanav p {
    font-size: 12px;
}

.channel-pie {
    height: 150px !important;
}

.article-feed-wrap {
    height: 100%;
    padding: 0 4px;
    display: flex;
    flex-direction: column;
}

.article-feed-scroll {
    height: 100%;
    flex: 1;
    overflow: hidden;
}

#articleFeedList {
    margin: 0;
    padding: 0;
}

.article-item {
    list-style: none;
    border-bottom: 1px dashed rgba(255,255,255,.12);
    padding: 8px 0 8px;
}

.article-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.article-meta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.article-title {
    font-size: 12.5px;
    color: #bce9ff;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}

.article-date {
    font-size: 11px;
    color: #f8df94;
    background: rgba(248,223,148,.12);
    border: 1px solid rgba(248,223,148,.25);
    border-radius: 10px;
    padding: 1px 6px;
    flex-shrink: 0;
}

.article-sentiment {
    font-size: 11px;
    border-radius: 10px;
    padding: 1px 8px;
    border: 1px solid transparent;
    font-weight: 600;
    letter-spacing: 0.3px;
}

.article-sentiment.is-positive {
    color: #a8ffd1;
    background: rgba(56, 208, 138, .16);
    border-color: rgba(56, 208, 138, .36);
}

.article-sentiment.is-neutral {
    color: #d7e3ff;
    background: rgba(155, 180, 219, .16);
    border-color: rgba(155, 180, 219, .34);
}

.article-sentiment.is-negative {
    color: #ffd0d0;
    background: rgba(239, 91, 91, .16);
    border-color: rgba(239, 91, 91, .34);
}

.article-summary {
    margin: 4px 0 0;
    font-size: 12px;
    line-height: 1.45;
    color: rgba(226,236,255,.85);
}

.article-key {
    display: inline-block;
    margin-right: 6px;
    padding: 1px 5px;
    border-radius: 8px;
    font-size: 10px;
    font-style: normal;
    color: #0c2130;
    background: #6ad5ff;
}

.article-key-summary {
    color: #2a1a08;
    background: #ffcc7a;
}

/* prettier top-right time badge */
.head .time {
    top: 50%;
    transform: translateY(-50%);
    line-height: 1.1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(129,205,255,.35);
    background: linear-gradient(135deg, rgba(6,62,107,.55), rgba(10,32,70,.45));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 4px 18px rgba(0,0,0,.25);
    font-size: 13px;
}

.time-date {
    color: #dff4ff;
}

.time-week {
    color: #7fe4ff;
    font-weight: 600;
}

.time-clock {
    color: #ffe78a;
    font-family: "Menlo", "Consolas", monospace;
    font-size: 14px;
    font-weight: 700;
}

.time-dot {
    color: rgba(200,230,255,.55);
}

@media (min-width: 1367px) and (max-width: 1500px) {
    .head .menu li {
        margin: 25px 8px;
    }

    .head .menu li a {
        font-size: 16px;
        padding: 0 10px;
    }

    .mapnav div {
        width: 96px;
        padding: 14px 0;
    }

    .mapnav div span {
        font-size: 12px;
    }

    .mapnav div p {
        font-size: 16px;
    }

    .nav2 > li {
        min-width: 220px;
    }
}

@media (min-width: 1281px) and (max-width: 1366px) {
    .map {
        padding-left: 0;
    }

    .mapnav2 {
        width: 44%;
    }

    .nav1 > li[style*="22%"] {
        width: 23% !important;
    }

    .nav1 > li[style*="56%"] {
        width: 54% !important;
    }
}

@media (max-width: 1280px) {
    .head {
        height: auto;
        padding: 10px 0 8px;
    }

    .head h1 {
        float: none;
        line-height: 1.25;
        padding-right: 0;
        font-size: 32px;
        margin-bottom: 8px;
        text-align: left;
    }

    .head .menu {
        float: none;
    }

    .head .time {
        position: static;
        transform: none;
        margin-top: 8px;
    }

    .mapnav {
        position: static;
        margin-bottom: 8px;
    }

    .mapnav ul {
        display: flex;
        flex-wrap: wrap;
    }

    .mapnav li {
        width: 20%;
        margin-right: 0;
        padding: 0 4px 6px;
    }

    .mapnav div {
        width: 100%;
    }

    .map {
        padding-left: 0;
    }

    .nav2 > li {
        flex: 1 1 50%;
        min-width: 0;
    }
}

@media (max-width: 980px) {
    .nav2 > li {
        flex: 1 1 100%;
    }

    .channel-leidanav li {
        width: 25%;
    }

    .channel-leidanav li:nth-child(5n+1) {
        border-left: 1px solid rgba(255,255,255,.1);
    }

    .channel-leidanav li:nth-child(4n+1) {
        border-left: none;
    }
}

/* Chrome narrow-height fallback: avoid vh rounding jitter on map container */
@media (min-width: 1200px) and (max-width: 1700px) and (max-height: 940px) {
    .boxnav[style*="height: 550px"] {
        height: 620px !important;
    }
}
