/* 研算数据发布平台 - 前台样式 */
*{margin:0;padding:0;box-sizing:border-box}
body{font:14px/1.8 "Microsoft YaHei","PingFang SC",Arial,sans-serif;color:#333;background:#f4f6f9}
a{color:#333;text-decoration:none;transition:color .2s}
a:hover{color:#1677ff}
img{border:0;max-width:100%;vertical-align:middle}
ul,ol{list-style:none}
.wrap{width:1200px;margin:0 auto;max-width:96%}
.fl{float:left}.fr{float:right}
.clearfix:after{content:"";display:block;clear:both}

/* 顶部条 */
.topbar{background:#1b2a41;color:#9fb3c8;font-size:12px;height:32px;line-height:32px}
.topbar a{color:#9fb3c8;margin-left:14px}
.topbar a:hover{color:#fff}

/* 头部 */
.header{background:#fff;padding:18px 0;border-bottom:1px solid #e6ebf2}
.header .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.logo{font-size:26px;font-weight:700;color:#0a5cab;letter-spacing:1px}
.logo img{max-height:52px}
.logo-txt{display:inline-block}
.search{display:flex;width:380px;max-width:100%}
.search input{flex:1;height:38px;border:2px solid #1677ff;border-right:0;padding:0 12px;outline:none;font-size:14px;border-radius:3px 0 0 3px}
.search button{width:88px;height:38px;border:0;background:#1677ff;color:#fff;font-size:15px;cursor:pointer;border-radius:0 3px 3px 0}
.search button:hover{background:#0a5cab}

/* 导航 */
.nav{background:#0a5cab;height:46px;position:relative;z-index:99}
.nav .menu{display:flex;flex-wrap:wrap}
.nav .menu>li{position:relative}
.nav .menu>li>a{display:block;padding:0 24px;line-height:46px;color:#fff;font-size:15px}
.nav .menu>li:hover>a,.nav .menu>li.on>a{background:#0880d0}
.nav .menu>li:hover .sub{display:block}
.nav .sub{display:none;position:absolute;left:0;top:46px;min-width:180px;background:#fff;border:1px solid #dde5ee;box-shadow:0 4px 12px rgba(0,0,0,.12);padding:6px 0}
.nav .sub a{display:block;padding:8px 18px;font-size:13px;color:#444}
.nav .sub a:hover{background:#f0f6ff;color:#1677ff}

/* 主体 */
.main{padding:20px 0 30px;min-height:420px}
.crumb{font-size:13px;color:#888;padding:10px 0}
.crumb a{color:#666}
.crumb a:hover{color:#1677ff}
.crumb .sep{margin:0 5px;color:#bbb}

/* 板块 */
.box{background:#fff;border:1px solid #e6ebf2;border-radius:4px;margin-bottom:20px;overflow:hidden}
.box-h{height:44px;line-height:44px;border-bottom:1px solid #eef2f7;padding:0 16px;display:flex;justify-content:space-between;align-items:center}
.box-h h2{font-size:17px;font-weight:600;color:#0a5cab;border-left:4px solid #1677ff;padding-left:10px;line-height:1.2}
.box-h .more{font-size:12px;color:#999}
.box-b{padding:14px 16px}

/* 首页焦点 */
.focus{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.focus-l{flex:1 1 460px;background:#0a2540;height:280px;border-radius:4px;overflow:hidden;position:relative}
.focus-l .slide{position:absolute;inset:0;opacity:0;transition:opacity .6s}
.focus-l .slide.on{opacity:1}
.focus-l .slide img{width:100%;height:100%;object-fit:cover}
.focus-l .cap{position:absolute;left:0;right:0;bottom:0;padding:14px 18px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;font-size:16px}
.focus-r{flex:1 1 380px;background:#fff;border:1px solid #e6ebf2;border-radius:4px;padding:6px 16px}
.focus-r li{border-bottom:1px dashed #eef2f7;padding:9px 0;display:flex;gap:10px}
.focus-r li:last-child{border-bottom:0}
.focus-r .no{width:20px;height:20px;line-height:20px;text-align:center;background:#c9d6e4;color:#fff;border-radius:2px;font-size:12px;flex:none}
.focus-r li:nth-child(1) .no,.focus-r li:nth-child(2) .no,.focus-r li:nth-child(3) .no{background:#e5533d}
.focus-r .tx{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.focus-r .dt{color:#aaa;font-size:12px;flex:none}

/* 图文列表 */
.plist{display:flex;flex-wrap:wrap;gap:16px}
.plist li{width:calc(25% - 12px);background:#fff;border:1px solid #e6ebf2;border-radius:4px;overflow:hidden}
.plist li a{display:block}
.plist .pic{height:150px;background:#eef2f7;display:flex;align-items:center;justify-content:center;color:#bbb;font-size:13px}
.plist .pic img{width:100%;height:100%;object-fit:cover}
.plist .tt{padding:10px 12px;font-size:14px;line-height:1.6;height:46px;overflow:hidden}
.plist li:hover{border-color:#1677ff;box-shadow:0 4px 14px rgba(22,119,255,.12)}

/* 文章列表 */
.alist li{padding:13px 0;border-bottom:1px dashed #eef2f7;display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.alist li:last-child{border-bottom:0}
.alist .l{flex:1;min-width:0}
.alist .l a{font-size:15px;color:#222}
.alist .l a:hover{color:#1677ff}
.alist .l .tag{display:inline-block;font-size:11px;color:#e5533d;border:1px solid #f5c6bf;border-radius:2px;padding:0 4px;margin-right:6px;vertical-align:1px}
.alist .d{color:#aaa;font-size:12px;flex:none}
.alist p.des{color:#888;font-size:13px;margin-top:4px;line-height:1.7}

/* 内容页 */
.article{background:#fff;border:1px solid #e6ebf2;border-radius:4px;padding:26px 30px}
.article h1{font-size:26px;line-height:1.5;margin-bottom:12px;color:#1a1a1a}
.article .meta{color:#999;font-size:13px;border-bottom:1px solid #f0f3f7;padding-bottom:12px;margin-bottom:18px}
.article .meta span{margin-right:18px}
.article .content{font-size:15px;line-height:2;color:#333;word-break:break-word}
.article .content p{margin-bottom:14px}
.article .content img{max-width:100%;height:auto;margin:8px 0}
.article .content h2,.article .content h3{font-size:18px;margin:18px 0 10px;color:#0a5cab}
.article .content table{border-collapse:collapse;width:100%;margin:12px 0}
.article .content td,.article .content th{border:1px solid #dfe6ee;padding:8px 10px}
.article .content th{background:#f4f8fd}
.article .tags{margin-top:20px;padding-top:14px;border-top:1px solid #f0f3f7;color:#888;font-size:13px}
.article .tags a{color:#1677ff}
.prevnext{display:flex;justify-content:space-between;margin-top:14px;font-size:13px;color:#777;flex-wrap:wrap;gap:10px}

/* 分页 */
.pagebar{margin:22px 0;text-align:center;font-size:13px}
.pagebar a,.pagebar span.cur{display:inline-block;padding:6px 13px;border:1px solid #dfe6ee;margin:0 3px;background:#fff;color:#555;border-radius:3px}
.pagebar a:hover{border-color:#1677ff;color:#1677ff}
.pagebar span.cur{background:#1677ff;border-color:#1677ff;color:#fff}
.pagebar .info{margin-left:12px;color:#999}

/* 侧栏 */
.layout{display:flex;gap:20px;flex-wrap:wrap}
.layout .col-r{flex:1 1 300px;min-width:280px}
.layout .col-l{flex:1 1 620px;min-width:0}
.side .box-h h2{font-size:15px}

/* 表格（通用） */
.tb{width:100%;border-collapse:collapse;font-size:13px}
.tb th,.tb td{border:1px solid #e6ebf2;padding:9px 10px;text-align:left}
.tb th{background:#f4f8fd;font-weight:600}
.tb tr:nth-child(even) td{background:#fafcfe}

/* 表单 */
.fm{padding:8px 0}
.fm .row{display:flex;margin-bottom:14px;align-items:flex-start;flex-wrap:wrap;gap:8px}
.fm .row label{width:96px;text-align:right;line-height:34px;color:#555;flex:none}
.fm .row .ctl{flex:1;min-width:220px}
.fm input[type=text],.fm input[type=password],.fm select,.fm textarea{width:100%;height:34px;border:1px solid #d8e0ea;padding:0 10px;border-radius:3px;outline:none;font-size:14px;font-family:inherit}
.fm textarea{height:110px;padding:8px 10px;line-height:1.7}
.fm input:focus,.fm textarea:focus,.fm select:focus{border-color:#1677ff}
.fm .btn{display:inline-block;height:36px;line-height:36px;padding:0 28px;background:#1677ff;color:#fff;border:0;border-radius:3px;cursor:pointer;font-size:15px}
.fm .btn:hover{background:#0a5cab}
.fm .btn.gray{background:#8c9bab}
.fm .tip{color:#999;font-size:12px;line-height:1.6;margin-top:4px}

/* 提示 */
.msg{border:1px solid #b7e0a3;background:#f2fbf0;color:#3c7a2a;padding:10px 14px;border-radius:3px;margin:10px 0}
.msg.err{border-color:#f3c2c2;background:#fdf2f2;color:#b03a3a}
.nodata{padding:40px;text-align:center;color:#aaa}

/* 底部 */
.flink{background:#fff;border-top:1px solid #e6ebf2;padding:14px 0;font-size:13px;line-height:2}
.flink strong{color:#555;margin-right:8px}
.flink a{margin-right:14px;color:#777}
.footer{background:#1b2a41;color:#8fa3b8;padding:26px 0 20px;text-align:center;font-size:13px;line-height:2.1}
.footer a{color:#8fa3b8;margin:0 5px}
.footer a:hover{color:#fff}
.footer .power{color:#5c7186;font-size:12px;margin-top:6px}

/* 设备认证查询 */
.devbox{background:#fff;border:1px solid #e6ebf2;border-radius:4px;padding:22px}
.devres{margin-top:18px}
.badge{display:inline-block;padding:2px 9px;border-radius:10px;font-size:12px;color:#fff}
.badge.ok{background:#28a745}
.badge.no{background:#dc3545}
.badge.wt{background:#ff9f1a}

/* 内容页媒体区（图集 / 视频） */
.gallery{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.gallery a.g-item{display:block;border:1px solid #e6ebf2;border-radius:4px;overflow:hidden;background:#f7f9fc;line-height:0}
.gallery a.g-item:hover{border-color:#1677ff;box-shadow:0 4px 14px rgba(22,119,255,.12)}
.gallery a.g-item img{display:block;height:150px;width:auto;max-width:100%}
.gallery .g-item.video{flex:1 1 100%;border:1px solid #e6ebf2;border-radius:4px;overflow:hidden;background:#000}
.gallery .g-item.video video{display:block;width:100%;max-height:440px}
.videobox{margin:18px 0}
.videobox video{display:block;width:100%;max-height:480px;background:#000;border-radius:4px}
.videolink{background:#f4f8fd;border:1px solid #e6ebf2;border-radius:4px;padding:10px 14px;font-size:14px;margin:10px 0}
.glightbox{position:fixed;left:0;top:0;right:0;bottom:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out}
.glightbox.on{display:flex}
.glightbox img{max-width:92%;max-height:92%;border:0;box-shadow:0 8px 30px rgba(0,0,0,.4)}

@media (max-width:900px){
  .plist li{width:calc(50% - 8px)}
  .nav .menu>li>a{padding:0 15px}
  .logo{font-size:20px}
  .search{width:100%}
  .article{padding:18px 16px}
  .article h1{font-size:21px}
}
