/* ==== 超自然行动组后台 - 灰白黑极简风 ==== */
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{font-family:"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;color:#1a1a1a;background:#f5f5f5}
a{color:inherit;text-decoration:none}
ul,li{list-style:none}
img{border:0;vertical-align:middle}

/* ---- 侧边栏 ---- */
.sidebar{width:200px;height:100vh;position:fixed;left:0;top:0;background:#1a1a1a;color:#999;display:flex;flex-direction:column;z-index:200}
.sidebar-top{padding:22px 20px;border-bottom:1px solid #333}
.sidebar-top h1{font-size:16px;color:#fff;font-weight:600}
.sidebar-top p{font-size:11px;color:#666;margin-top:3px}
.nav-group{flex:1;padding:12px 0;overflow-y:auto}
.nav-group .nav-label{font-size:10px;color:#555;text-transform:uppercase;letter-spacing:1px;padding:8px 20px}
.nav-a{display:block;padding:10px 20px;color:#999;font-size:13px;border-left:3px solid transparent;transition:all .15s}
.nav-a:hover{background:#2a2a2a;color:#fff}
.nav-a.on{background:#2a2a2a;color:#fff;border-left-color:#fff}
.sidebar-bot{padding:10px 20px;border-top:1px solid #333;font-size:10px;color:#555}

/* ---- 主区 ---- */
.main{margin-left:200px;min-height:100vh}
.header{height:52px;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;padding:0 24px;position:sticky;top:0;z-index:100}
.header h2{font-size:16px;font-weight:600;color:#1a1a1a}
.header-right{display:flex;align-items:center;gap:12px;font-size:13px;color:#666}
.header-right .uavatar{width:30px;height:30px;border-radius:50%;background:#1a1a1a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}
.header-right a{color:#e53935;padding:3px 8px;border-radius:4px}
.header-right a:hover{background:#fce4ec}
.content{padding:20px 24px}

/* ---- 卡片 ---- */
.card{background:#fff;border:1px solid #e0e0e0;margin-bottom:16px}
.card-head{padding:14px 18px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}
.card-head h3{font-size:14px;font-weight:600}
.card-body{padding:18px}

/* ---- 统计 ---- */
.stat-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-bottom:18px}
.stat-box{background:#fff;border:1px solid #e0e0e0;padding:18px}
.stat-box .sl{font-size:11px;color:#999;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.stat-box .sn{font-size:24px;font-weight:700;color:#1a1a1a}
.stat-box .sn.g{color:#1a1a1a}

/* ---- 按钮 ---- */
.btn{display:inline-flex;align-items:center;gap:4px;padding:7px 16px;font-size:13px;font-family:inherit;border:1px solid #1a1a1a;cursor:pointer;transition:all .12s;white-space:nowrap}
.btn-dark{background:#1a1a1a;color:#fff;border-color:#1a1a1a}
.btn-dark:hover{background:#333;border-color:#333}
.btn-dark:active{background:#000}
.btn-light{background:#fff;color:#1a1a1a;border-color:#ccc}
.btn-light:hover{border-color:#1a1a1a}
.btn-light:active{background:#f5f5f5}
.btn-red{background:#fff;color:#e53935;border-color:#e53935}
.btn-red:hover{background:#e53935;color:#fff}
.btn-sm{padding:4px 10px;font-size:12px}

/* ---- 表格 ---- */
.tbl-wrap{background:#fff;border:1px solid #e0e0e0;overflow:hidden;margin-bottom:16px}
table.tbl{width:100%;border-collapse:collapse;font-size:13px}
table.tbl th{padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px;background:#fafafa;border-bottom:2px solid #e0e0e0;white-space:nowrap}
table.tbl td{padding:10px 12px;border-bottom:1px solid #f0f0f0;color:#333;vertical-align:middle}
table.tbl tbody tr:hover{background:#fafafa}
table.tbl tbody tr:last-child td{border-bottom:none}
.td-center{text-align:center}

/* 头像 */
.img-thumb{width:34px;height:34px;border-radius:4px;object-fit:cover;border:1px solid #e0e0e0}
.no-img{color:#ccc;font-size:12px}
.txt-money{font-weight:600;color:#1a1a1a}
.txt-empty{font-weight:400;color:#bbb;font-style:italic}
.txt-path{max-width:200px;word-break:break-all;font-size:12px;color:#999}

/* ---- 标签 ---- */
.tag{display:inline-block;padding:2px 8px;border-radius:3px;font-size:11px;font-weight:600;line-height:1.5}
.tag-green{background:#e8f5e9;color:#2e7d32}
.tag-red{background:#ffebee;color:#c62828}
.tag-orange{background:#fff3e0;color:#e65100}
.tag-blue{background:#e3f2fd;color:#1565c0}
.tag-gray{background:#f5f5f5;color:#999}

/* ---- 上传 ---- */
.up-form{display:inline-block;vertical-align:middle}
.up-btn{display:inline-flex;align-items:center;padding:4px 10px;background:#fff;border:1px solid #ccc;color:#333;font-size:12px;cursor:pointer}
.up-btn:hover{border-color:#1a1a1a}
.up-btn input{display:none}

/* ---- 弹窗 ---- */
.mask{position:fixed;inset:0;background:rgba(0,0,0,.4);display:none;align-items:center;justify-content:center;z-index:999}
.dlg{background:#fff;width:600px;max-width:92vw;max-height:90vh;overflow-y:auto}
.dlg-head{padding:14px 18px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}
.dlg-head h3{font-size:15px;font-weight:600}
.dlg-x{width:28px;height:28px;border:none;background:transparent;font-size:18px;color:#999;cursor:pointer;display:flex;align-items:center;justify-content:center}
.dlg-x:hover{color:#e53935}
.dlg-body{padding:20px}
.dlg-foot{padding:12px 18px;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;gap:10px}

/* ---- 表单 ---- */
.fg{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.fg .fi{margin-bottom:0}
.fg .fi.full{grid-column:1/-1}
.fl{display:block;font-size:12px;color:#666;margin-bottom:5px;font-weight:500}
.fl .req{color:#e53935}
.fc{width:100%;padding:8px 10px;font-size:13px;font-family:inherit;color:#1a1a1a;background:#fff;border:1px solid #ddd;outline:none;transition:border-color .15s}
.fc:focus{border-color:#1a1a1a}
.fc::placeholder{color:#ccc}
textarea.fc{resize:vertical;min-height:90px}
select.fc{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='%23999' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}
.fh{font-size:11px;color:#999;margin-top:3px}

/* 复选 */
.ck-row{display:flex;align-items:center;gap:6px;padding-top:26px}
.ck-row input{width:16px;height:16px;cursor:pointer}
.ck-row span{font-size:13px;color:#666}

/* ---- 行内表单 ---- */
.inline-f{display:flex;gap:10px;align-items:center;padding:14px 18px}
.inline-f .fc{width:auto;min-width:220px}

/* ---- 说明框 ---- */
.note{padding:14px 18px;background:#fafafa;border:1px solid #e0e0e0;margin-top:14px}
.note h4{font-size:13px;color:#1a1a1a;margin-bottom:8px;font-weight:600}
.note ul li{padding:3px 0 3px 14px;font-size:12px;color:#666;position:relative}
.note ul li::before{content:"";position:absolute;left:0;top:9px;width:4px;height:4px;background:#999}

/* ---- 开关行 ---- */
.sw-row{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e0e0e0}
.sw-row h3{font-size:14px;font-weight:600}

/* ---- 首页欢迎 ---- */
.hello-box{background:#fff;border:1px solid #e0e0e0;padding:22px;margin-bottom:16px}
.hello-box h2{font-size:18px;font-weight:700;margin-bottom:4px}
.hello-box p{font-size:13px;color:#666}
.hello-box .ts{font-size:11px;color:#999;margin-top:8px}

/* 备案 */
.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:18px}
.info-cell{padding:10px 14px;background:#fafafa;border:1px solid #f0f0f0}
.info-cell .k{font-size:11px;color:#999;margin-bottom:3px}
.info-cell .v{font-size:13px;color:#1a1a1a;font-weight:500}

/* ---- 登录页 ---- */
.login-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#1a1a1a}
.login-frm{width:360px;max-width:92vw;background:#fff;padding:32px 30px}
.login-frm .logo{width:40px;height:40px;background:#1a1a1a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;margin:0 auto 16px}
.login-frm h2{text-align:center;font-size:18px;font-weight:700;margin-bottom:4px}
.login-frm .sub{text-align:center;font-size:12px;color:#999;margin-bottom:24px}
.login-frm .fi{margin-bottom:18px}
.login-frm .btn-dark{width:100%;padding:10px;font-size:14px;justify-content:center}
.err-box{color:#e53935;text-align:center;margin-bottom:14px;font-size:13px;padding:8px;background:#fce4ec;border:1px solid #e53935}

/* ---- 滚动条 ---- */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:#f5f5f5}
::-webkit-scrollbar-thumb{background:#ccc}
::-webkit-scrollbar-thumb:hover{background:#999}

/* ---- 响应 ---- */
@media(max-width:768px){
    .sidebar{width:56px}
    .sidebar-top h1,.sidebar-top p,.nav-group .nav-label,.nav-a span,.sidebar-bot{display:none}
    .main{margin-left:56px}
    .fg{grid-template-columns:1fr}
    .stat-row{grid-template-columns:1fr 1fr}
}

/* ---- 补充类 ---- */
.panel{background:#fff;border:1px solid #e0e0e0;margin-bottom:16px}
.panel-title{padding:14px 18px;border-bottom:1px solid #e0e0e0;font-size:14px;font-weight:600}
.panel-body{padding:18px}
.topbar{height:52px;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;padding:0 24px}
.breadcrumb{font-size:13px;color:#666}
.user-info{display:flex;align-items:center;gap:10px;font-size:13px;color:#666}
.logout-btn{color:#e53935;padding:3px 8px;border-radius:4px;text-decoration:none}
.logout-btn:hover{background:#fce4ec}
.btn-default{background:#fff;color:#1a1a1a;border:1px solid #ccc}
.btn-default:hover{border-color:#1a1a1a}
.btn-danger{background:#fff;color:#c62828;border:1px solid #c62828}
.btn-danger:hover{background:#c62828;color:#fff}
.btn-sm{padding:4px 10px;font-size:12px}
.txt-path{max-width:200px;word-break:break-all;font-size:12px;color:#999}
a{text-decoration:none;color:inherit}
