/* ===== 固定资产管理模块样式 ===== */
.modal-title{font-size:1.1rem;font-weight:700;margin-bottom:16px}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}

/* 台账/流转/到期未还/折旧明细：撑满视口高度，表格内部滚动，分页固定底部 */
#tab-asset-list.active,#tab-asset-flow.active,#tab-asset-overdue.active,#tab-asset-depr.active{display:flex;flex-direction:column;flex:1;min-height:0}
#tab-asset-list.active .panel-header,#tab-asset-flow.active .panel-header,#tab-asset-overdue.active .panel-header,#tab-asset-depr.active .panel-header,
#tab-asset-list.active .panel-toolbar,#tab-asset-flow.active .panel-toolbar,#tab-asset-overdue.active .panel-toolbar,#tab-asset-depr.active .panel-toolbar,
#tab-asset-list.active #assetFlowStats,#tab-asset-flow.active #assetFlowStats,#tab-asset-overdue.active #assetFlowStats,#tab-asset-depr.active #assetFlowStats{flex:0 0 auto}
#tab-asset-list.active .asset-table-wrap,#tab-asset-flow.active .asset-flow-table-wrap,#tab-asset-overdue.active .asset-table-wrap,#tab-asset-depr.active .asset-table-wrap{flex:1;min-height:0}

/* 卡片作为弹性容器：表格区撑满剩余高度，分页条固定在卡片底部（与费用录入/水电录入一致） */
#tab-asset-list.active .fe-card,#tab-asset-flow.active .fe-card,#tab-asset-overdue.active .fe-card,#tab-asset-depr.active .fe-card{
  flex:1;display:flex;flex-direction:column;min-height:0;margin-bottom:0}
#tab-asset-list.active .fe-card-header,#tab-asset-overdue.active .fe-card-header,#tab-asset-depr.active .fe-card-header{flex:0 0 auto}
#tab-asset-list.active .list-pager,#tab-asset-overdue.active .list-pager,#tab-asset-depr.active .list-pager{flex:0 0 auto;margin-top:10px}

.a-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.a-field{display:flex;flex-direction:column;gap:5px}
.a-field.a-full{grid-column:1/-1}
.a-field label{font-size:.78rem;color:var(--text-muted);font-weight:600}
.a-field input,.a-field select,.a-field textarea{
  width:100%;padding:8px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:.85rem;
  background:var(--bg-card);color:var(--text);outline:none;
}
.a-field input:focus,.a-field select:focus,.a-field textarea:focus{border-color:var(--primary)}
.a-hint{font-size:.72rem}
.a-hint a{color:var(--primary);text-decoration:none}

.a-cat-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto}
.a-cat-row{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border:1px solid var(--border);border-radius:8px;font-size:.85rem}

.asset-table-wrap,.asset-flow-table-wrap{overflow:auto;flex:1;min-height:0;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}
.asset-table{width:100%;border-collapse:collapse;font-size:.82rem}
.asset-table th{text-align:left;font-weight:600;color:var(--text-muted);padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--border-light);position:sticky;top:0;z-index:2}
.asset-table td{padding:8px 10px;border-bottom:1px solid var(--border-light);color:var(--text);white-space:nowrap}
.asset-table tbody tr:hover td{background:var(--hover)}
.asset-table .a-num{text-align:right;font-variant-numeric:tabular-nums}
.asset-table .a-ops{white-space:nowrap}
.asset-table .a-sel{width:15px;height:15px;cursor:pointer}
/* 资产台账：表头/单元格内容居中（金额 .a-num 仍右对齐便于阅读） */
.asset-table th,.asset-table td{text-align:center}
.a-flow-type{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:600;background:var(--primary-light);color:var(--primary)}

.a-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.a-dash-grid .a-dash-wide{grid-column:1/-1}
.a-chart-body{position:relative;height:260px}
/* 部门堆叠图：画布随资产种类增多而变高，外层容器滚动查看（避免柱子挤在一起） */
#deptStackBody{min-height:340px}
#deptStackBody canvas{max-height:none;height:100%;width:100%}
/* 分布图滚动容器：隐藏滚动条，自动滚动驱动 */
#deptStackScroll{scrollbar-width:none;-ms-overflow-style:none}
#deptStackScroll::-webkit-scrollbar{display:none}
/* 资产看板顶部统计卡片：分两行显示（每行 4 张），窄屏自动换行 */
#assetStatsBar{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
#assetStatsBar .stat-card{padding:16px 14px;gap:12px}
#assetStatsBar .stat-icon{width:44px;height:44px}
#assetStatsBar .stat-icon svg{width:20px;height:20px}
#assetStatsBar .stat-value{font-size:1.3rem}
@media (max-width:1200px){#assetStatsBar{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){#assetStatsBar{grid-template-columns:repeat(1,1fr)}}


.a-dropdown{position:relative;display:inline-block}
.a-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:170px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 20px rgba(0,0,0,.18);z-index:60;padding:4px;display:flex;flex-direction:column;gap:2px}
.a-dropdown-item{display:block;width:100%;text-align:left;padding:8px 12px;font-size:.82rem;color:var(--text);background:none;border:none;border-radius:6px;cursor:pointer}
.a-dropdown-item:hover{background:var(--hover)}
.a-dropdown-item:disabled{opacity:.45;cursor:not-allowed}

.a-mode-btn.active{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}
.a-batch-table{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.a-batch-head,.a-batch-row{display:grid;grid-template-columns:1.6fr 1.2fr 64px 70px 90px 36px;gap:6px;align-items:center}
.a-batch-head{font-size:.72rem;color:var(--text-muted);font-weight:600;padding:0 2px}
.a-batch-row input{width:100%;padding:7px 8px;border:1.5px solid var(--border);border-radius:7px;font-size:.82rem;background:var(--bg-card);color:var(--text);outline:none;box-sizing:border-box}
.a-batch-row input:focus{border-color:var(--primary)}
@media(max-width:900px){.a-batch-head,.a-batch-row{grid-template-columns:1.4fr 1fr 56px 62px 84px 34px}}

.a-trace-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto}
.a-trace-row{border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-size:.84rem}
.a-trace-head{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.a-trace-head .a-flow-type{font-size:.72rem;padding:2px 8px;border-radius:10px;background:var(--primary-light);color:var(--primary);font-weight:600}
.a-trace-op{margin-left:auto;color:var(--text-muted);font-size:.76rem}
.a-trace-body{color:var(--text-muted);font-size:.8rem;word-break:break-all}

.a-flow-asset-list{max-height:210px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:3px;background:var(--bg-card)}
.a-flow-asset-item{display:flex;align-items:center;gap:8px;font-size:.82rem;padding:5px 7px;border-radius:6px;cursor:pointer;color:var(--text)}
.a-flow-asset-item:hover{background:var(--hover)}
.a-flow-asset-item input{width:14px;height:14px;cursor:pointer;flex:0 0 auto}


/* 开关样式（不计提折旧） */
.a-switch-row{display:flex;align-items:center;gap:8px;margin-top:6px;cursor:pointer;font-size:.78rem;color:var(--text);font-weight:400;user-select:none}
.a-switch{position:relative;display:inline-block;width:38px;height:20px;flex:0 0 auto}
.a-switch input{opacity:0;width:0;height:0}
.a-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#cbd5e1;border-radius:20px;transition:background-color .2s}
.a-switch .slider:before{content:'';position:absolute;height:14px;width:14px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.a-switch input:checked + .slider{background:var(--primary)}
.a-switch input:checked + .slider:before{transform:translateX(18px)}
.a-switch input:disabled + .slider{opacity:.5;cursor:not-allowed}

@media(max-width:900px){.a-dash-grid{grid-template-columns:1fr}.a-form-grid{grid-template-columns:1fr}}

/* ===== 资产模块：表头固定 + separate（表格仅下边框，separate 无副作用，消除细缝） ===== */
.asset-table{border-collapse:separate;border-spacing:0}