*{box-sizing:border-box;margin:0;padding:0}
body{font:14px/1.6 "Microsoft YaHei",SimSun,sans-serif;background:#f0f2f5;color:#333}
a{color:#2A86EA;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{width:96%;max-width:960px;margin:20px auto;padding-bottom:40px}
.topbar{overflow:hidden;margin-bottom:15px}
.topbar h1{float:left;font-size:18px;line-height:32px}
.topbar .acts{float:right}
.topbar .acts a{margin-left:8px}
.card{background:#fff;border:1px solid #e3e3e3;padding:15px;margin-bottom:15px}
.card h2{font-size:15px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eee}
.fld{display:block;margin:8px 0 4px;color:#666;font-size:13px}
input:not([type]),input[type=text],input[type=url],input[type=password],input[type=search],input[type=email],textarea{
  width:100%;height:34px;padding:0 8px;border:1px solid #ccc;background:#fff;font:14px "Microsoft YaHei",sans-serif
}
textarea{height:80px;padding:6px 8px}
input:focus,textarea:focus{border-color:#2A86EA;outline:0}
.btn{
  display:inline-block;height:32px;line-height:32px;padding:0 14px;background:#2A86EA;color:#fff!important;
  border:0;cursor:pointer;font-size:13px;text-decoration:none!important;vertical-align:middle
}
.btn:hover{background:#1f75d1}
.btn.gray{background:#888}
.btn.gray:hover{background:#666}
.btn.red{background:#d9534f}
.btn.red:hover{background:#c9302c}
.btn.ghost{background:#fff;color:#333!important;border:1px solid #ccc;line-height:30px}
.btn.sm{height:26px;line-height:26px;padding:0 8px;font-size:12px}
.btn.block{display:block;width:100%;text-align:center}
.ok{color:#3c763d;margin-bottom:10px}
.err{color:#a94442;margin-bottom:10px}
.muted{color:#999;font-size:12px;margin:6px 0}
.grid{overflow:hidden}
.grid-2>div{float:left;width:48%;margin-right:4%}
.grid-2>div:nth-child(2n){margin-right:0}
@media(max-width:700px){.grid-2>div{float:none;width:100%;margin:0 0 10px}}
.stack>div,.stack>.grid{margin-bottom:10px}
.mt{margin-top:12px}
table.list{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e3e3e3}
table.list th,table.list td{border-bottom:1px solid #eee;padding:10px 8px;text-align:left;font-size:13px}
table.list th{background:#fafafa;font-weight:bold;color:#555}
table.list .ops a{margin-right:8px}
.badge{
  display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;line-height:18px;
  font-weight:normal;white-space:nowrap;vertical-align:middle
}
.badge-ok{background:#e6f4ea;color:#1e7e34;border:1px solid #b7dfc3}
.badge-pending{background:#fff3e0;color:#e65100;border:1px solid #ffcc80}
.badge-all{background:#e8f0fe;color:#2A86EA;border:1px solid #b3d4fc;margin-left:4px}
.confirm-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.confirm-summary-item{font-size:13px;color:#555}
.confirm-status-bar{padding:12px 15px}
.confirm-status-bar-inner{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.confirm-status-bar-inner strong{font-size:14px;color:#333}
.confirm-panel{border:1px solid #e3e3e3;padding:12px;background:#fafafa}
.confirm-panel.is-done{border-color:#b7dfc3;background:#f6fbf7}
.confirm-panel.is-pending{border-color:#ffcc80;background:#fffaf3}
.confirm-panel-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.confirm-panel-hd .fld{margin:0}
.confirm-panel-actions{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.confirm-list-cell{white-space:nowrap}
.confirm-list-cell .badge{display:block;margin:2px 0}
.confirm-list-cell a{font-size:12px}
.list-status-legend{margin:-4px 0 10px;font-size:12px;color:#888}
@media(max-width:640px){
  table.list th:nth-child(3),table.list td:nth-child(3){display:none}
  table.list th:nth-child(4),table.list td:nth-child(4),
  table.list th:nth-child(5),table.list td:nth-child(5){font-size:12px;padding:8px 4px}
}

.up{
  position:relative;border:1px dashed #bbb;background:#fafafa;min-height:100px;padding:10px;
  text-align:center;cursor:pointer
}
.up:hover,.up.is-drag{border-color:#2A86EA;background:#f3f8fe}
.up.has-file{background:#fff;border-style:solid;border-color:#ddd}
.up input[type=file]{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;cursor:pointer}
.up .preview{max-width:100%;max-height:100px;display:none;margin:0 auto}
.up.has-file .preview{display:block}
.up .ph{padding:18px 0;color:#888;font-size:13px;pointer-events:none}
.up.has-file .ph{display:none}
.up .fname{display:none;color:#999;font-size:12px;margin-top:6px}
.up.has-file .fname{display:block}
.up-sm{min-height:80px}
.up-sm .preview{max-height:60px}
.up-sm .ph{padding:10px 0}
.clear{display:inline-block;margin-top:6px;font-size:12px;color:#666}
.clear input{vertical-align:middle;margin-right:4px}

.cat{border:1px solid #e5e5e5;margin-bottom:14px;background:#fff;border-radius:2px}
.cat-hd{
  background:#f7f8fa;color:#333;padding:10px 12px;overflow:hidden;
  border-bottom:1px solid #ececec;display:flex;align-items:center;gap:8px;flex-wrap:wrap
}
.cat-hd form{display:inline}
.cat-hd .cat-label{font-size:12px;color:#888;margin-right:4px}
.cat-hd input[type=text]{
  width:200px;height:30px;border:1px solid #d9d9d9;padding:0 8px;vertical-align:middle;
  background:#fff;border-radius:2px
}
.cat-hd .btn{vertical-align:middle;margin-left:0}
.cat-hd .cat-acts{margin-left:auto;display:flex;gap:6px;align-items:center}
.cat-bd{padding:10px 12px}
.page-item{border-bottom:1px solid #f0f0f0;padding:12px 0;overflow:hidden;position:relative}
.page-item:last-child{border-bottom:0}
.page-item form{margin-bottom:6px}
.page-item .left{float:left;width:120px;margin-right:12px}
.page-item .mid{overflow:hidden;padding-right:70px}
.page-item .mid input[type=text]{width:100%;max-width:280px;display:inline-block;vertical-align:middle}
.page-item .page-del{position:absolute;right:0;top:12px}
.add-bar{margin-top:10px;padding-top:10px;border-top:1px dashed #ddd;overflow:hidden}
.add-bar .col{float:left;margin-right:10px;margin-bottom:8px}
.add-bar .col input[type=text]{width:160px}
.draft-cats .page-add-row{margin-top:8px;padding-top:8px;border-top:1px dashed #e8e8e8}
.draft-toolbar{margin-top:8px}

.login-wrap{padding-top:80px;text-align:center}
.login-card{display:inline-block;width:320px;text-align:left;padding:20px}
.login-card h1{font-size:16px;margin-bottom:15px;text-align:center}
.login-card .btn{width:100%}
.login-card .fld{margin-top:10px}
