.expense-module-page{
  --expense-bg:#f6f7f9;
  --expense-card:#fff;
  --expense-line:#e5e7eb;
  --expense-soft:#f8fafc;
  --expense-text:#111827;
  --expense-muted:#667085;
  --expense-blue:#1677ff;
  --expense-shadow:0 10px 28px rgba(15,23,42,.045);
  max-width:1680px;
  background:var(--expense-bg);
}

.expense-module-page .expense-head{
  align-items:flex-end;
  margin-bottom:18px;
  padding:0 0 2px;
}
.expense-module-kicker{
  display:inline-flex;
  height:24px;
  align-items:center;
  padding:0 9px;
  margin-bottom:10px;
  border:1px solid #d8e7ff;
  border-radius:7px;
  background:#eef6ff;
  color:var(--expense-blue);
  font-size:12px;
  font-style:normal;
  font-weight:800;
}
.expense-head h1{
  margin:0;
  color:var(--expense-text);
  font-size:28px!important;
  font-weight:900;
  letter-spacing:0;
}
.expense-head p{
  margin-top:8px;
  color:var(--expense-muted);
  font-size:13px;
  font-weight:650;
}
.expense-head-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.expense-head-actions .el-button,
.expense-more-menu .el-button{
  height:36px;
  padding:0 15px;
  border-radius:8px!important;
  font-weight:750;
}
.expense-head-actions .el-button--primary{
  min-width:96px;
  box-shadow:0 8px 18px rgba(22,119,255,.18);
}
.expense-more-menu .el-button{
  background:#fff;
}

.expense-module-page .table-stat-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:16px;
}
.expense-module-page .pro-stat-card{
  min-height:100px;
  padding:18px 20px 16px 58px;
  position:relative;
  overflow:hidden;
  border:1px solid var(--expense-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:var(--expense-shadow)!important;
}
.expense-module-page .pro-stat-card::before{
  content:"";
  position:absolute;
  left:20px;
  top:20px;
  width:26px;
  height:26px;
  border-radius:8px;
  background:#eef5ff;
  box-shadow:inset 0 0 0 1px #d8e7ff;
}
.expense-module-page .pro-stat-card::after{
  content:"";
  position:absolute;
  left:29px;
  top:29px;
  width:8px;
  height:8px;
  border-radius:2px;
  background:var(--expense-blue);
}
.expense-module-page .pro-stat-card.green::before{background:#ecfdf3;box-shadow:inset 0 0 0 1px #bbf7d0}
.expense-module-page .pro-stat-card.green::after{background:#16a34a}
.expense-module-page .pro-stat-card.orange::before{background:#fff7ed;box-shadow:inset 0 0 0 1px #fed7aa}
.expense-module-page .pro-stat-card.orange::after{background:#f59e0b}
.expense-module-page .pro-stat-card.slate::before{background:#f8fafc;box-shadow:inset 0 0 0 1px #dfe5ee}
.expense-module-page .pro-stat-card.slate::after{background:#475569}
.expense-module-page .pro-stat-card span{
  display:block;
  color:#5f6b7a;
  font-size:12px;
  font-weight:800;
}
.expense-module-page .pro-stat-card b{
  display:block;
  margin:9px 0 7px;
  color:var(--expense-text);
  font-size:27px;
  line-height:1;
  font-weight:900;
  letter-spacing:0;
  font-variant-numeric:tabular-nums;
}
.expense-module-page .pro-stat-card small{
  color:#98a2b3;
  font-size:12px;
  font-weight:700;
}

.expense-module-page .expense-warning-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.expense-module-page .expense-warning-strip article{
  min-height:86px;
  padding:15px 18px;
  border:1px solid #ffd7a6;
  border-radius:10px;
  background:#fffaf3;
  box-shadow:0 8px 22px rgba(217,119,6,.045);
  cursor:pointer;
  transition:.15s ease;
}
.expense-module-page .expense-warning-strip article:hover,
.expense-module-page .expense-warning-strip article.active{
  border-color:#f59e0b;
  box-shadow:0 10px 26px rgba(217,119,6,.08);
  transform:translateY(-1px);
}
.expense-module-page .expense-warning-strip article.ok{
  background:#f8fafc;
  border-color:var(--expense-line);
}
.expense-module-page .expense-warning-strip span{
  color:#5f6b7a;
  font-size:12px;
  font-weight:800;
}
.expense-module-page .expense-warning-strip b{
  display:block;
  margin:7px 0 4px;
  color:var(--expense-text);
  font-size:25px;
  line-height:1;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}
.expense-module-page .expense-warning-strip small{
  color:#7b8494;
  font-weight:650;
}

.expense-module-page .pro-table-panel{
  min-height:0!important;
  overflow:hidden;
  border:1px solid var(--expense-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:var(--expense-shadow)!important;
}
.expense-module-page .pro-table-panel>.el-card__header{
  min-height:68px!important;
  padding:17px 20px!important;
  border-bottom:1px solid #eef1f5!important;
  background:#fff!important;
}
.expense-module-page .pro-table-panel>.el-card__body{
  min-height:0!important;
  padding:16px 20px 14px!important;
  background:#fff!important;
}
.expense-module-page .table-toolbar{
  align-items:center;
}
.expense-module-page .table-toolbar b{
  color:var(--expense-text);
  font-size:18px;
  font-weight:900;
}
.expense-module-page .table-toolbar span{
  margin-top:5px;
  color:#98a2b3;
  font-size:12px;
  font-weight:650;
}
.expense-module-page .toolbar-actions{
  gap:8px;
}
.expense-module-page .toolbar-actions .el-button,
.expense-module-page .toolbar-actions .el-select{
  height:34px;
}
.expense-module-page .freeze-select{
  width:118px;
}

.expense-module-page .pro-filter-card{
  display:grid!important;
  grid-template-columns:108px repeat(auto-fit,minmax(154px,1fr)) auto auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:13px!important;
  margin-bottom:12px!important;
  overflow:visible!important;
  border:1px solid var(--expense-line)!important;
  border-radius:9px!important;
  background:#fbfcfe!important;
}
.expense-filter-compact{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  margin-bottom:10px;
  padding:0 2px;
}
.expense-filter-compact .el-button{
  height:34px;
  min-width:82px;
  border-radius:8px!important;
  font-weight:800;
}
.expense-filter-compact span{
  color:#667085;
  font-size:12px;
  font-weight:750;
}
.expense-filter-compact a{
  color:var(--expense-blue);
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.expense-module-page .pro-filter-card .filter-title{
  min-width:0!important;
  flex:auto!important;
}
.expense-module-page .pro-filter-card .filter-title b{
  color:#344054;
  font-size:13px;
  font-weight:850;
}
.expense-module-page .pro-filter-card .filter-title span{
  display:none!important;
}
.expense-module-page .pro-filter-card .el-input,
.expense-module-page .pro-filter-card .el-select,
.expense-module-page .pro-filter-card .el-date-editor{
  width:100%!important;
  flex:auto!important;
}
.expense-module-page .pro-filter-card .el-input__wrapper,
.expense-module-page .pro-filter-card .el-select__wrapper{
  height:34px;
  border-radius:7px!important;
  background:#fff;
  box-shadow:0 0 0 1px #dfe5ee inset!important;
}
.expense-module-page .pro-filter-card .el-button{
  height:34px;
  min-width:70px;
  border-radius:7px!important;
}

.active-filter-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 13px;
  color:#667085;
  font-size:12px;
}
.active-filter-row span{
  font-weight:800;
  color:#475467;
}
.active-filter-row button{
  height:27px;
  border:1px solid #dbe5f0;
  border-radius:999px;
  background:#fff;
  color:#344054;
  padding:0 10px;
  cursor:pointer;
  font-size:12px;
  font-weight:650;
}
.active-filter-row button:hover{
  border-color:var(--expense-blue);
  color:var(--expense-blue);
  background:#f6faff;
}
.active-filter-row a{
  color:var(--expense-blue);
  cursor:pointer;
  font-weight:800;
}

.expense-module-page .top-table-scroll{
  height:9px;
  margin:0 0 7px;
}
.expense-module-page .data-table{
  min-height:0!important;
  overflow:hidden;
  border:1px solid var(--expense-line)!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:13px!important;
}
.expense-module-page .data-table .el-table__header th{
  height:46px!important;
  background:#f8fafc!important;
  color:#475467!important;
  font-weight:850!important;
}
.expense-module-page .data-table th.el-table__cell>.cell{
  min-height:44px!important;
  padding:0 10px!important;
  text-align:center!important;
}
.expense-module-page .data-table td.el-table__cell>.cell{
  min-height:54px!important;
  padding:0 10px!important;
  color:#344054;
  font-weight:500!important;
}
.expense-module-page .data-table td,
.expense-module-page .data-table th{
  border-color:#eef1f5!important;
}
.expense-module-page .data-table .el-table__row:nth-child(even)>td{
  background:#fcfdff!important;
}
.expense-module-page .data-table .el-table__row:hover>td{
  background:#f6faff!important;
}
.expense-module-page .data-table .el-table__fixed-right-patch{
  background:#f8fafc!important;
}
.expense-module-page .money-cell{
  justify-content:flex-end!important;
  text-align:right!important;
  color:#111827!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-weight:800!important;
  font-variant-numeric:tabular-nums;
}
.expense-module-page .tag-cell{
  display:inline-flex!important;
  width:auto!important;
  min-width:58px;
  justify-content:center!important;
  align-items:center;
  border:1px solid transparent;
  border-radius:999px;
  padding:4px 10px;
  font-size:12px;
  font-weight:800!important;
  line-height:1;
}
.expense-module-page .tag-green{background:#ecfdf3!important;color:#027a48!important;border-color:#bbf7d0!important}
.expense-module-page .tag-blue{background:#eef6ff!important;color:#1677ff!important;border-color:#cfe3ff!important}
.expense-module-page .tag-orange{background:#fff7ed!important;color:#b45309!important;border-color:#fed7aa!important}
.expense-module-page .tag-red{background:#fef2f2!important;color:#dc2626!important;border-color:#fecaca!important}
.expense-module-page .tag-gray{background:#f8fafc!important;color:#667085!important;border-color:#e5e7eb!important}
.expense-module-page .table-link-cell{
  color:var(--expense-blue);
  font-weight:800;
  text-decoration:none;
}
.expense-module-page .table-file-mini{
  max-width:118px;
  display:inline-grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:6px;
  align-items:center;
  padding:4px 8px;
  border:1px solid #e5e7eb;
  border-radius:999px;
  background:#f8fafc;
}
.expense-module-page .table-file-mini .doc-logo{
  width:22px;
  height:22px;
  border-radius:50%;
  font-size:0;
}
.expense-module-page .table-file-mini span{
  color:#475467;
  font-size:12px;
  font-weight:700;
}
.expense-module-page .cell-upload-preview>img,
.expense-module-page .sheet-image-cell{
  border-radius:8px;
  border:1px solid #e5e7eb;
  background:#f8fafc;
}
.expense-module-page .table-pagination{
  padding:14px 4px 0!important;
  color:#667085;
}
.expense-module-page .el-pagination.is-background .el-pager li.is-active,
.expense-module-page .el-pagination .el-pager li.is-active{
  background:var(--expense-blue)!important;
  color:#fff!important;
}

.expense-empty{
  min-height:220px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:7px;
  color:#98a2b3;
}
.expense-empty b{
  color:#344054;
  font-size:15px;
}
.expense-empty span{
  font-size:13px;
}

.expense-edit-dialog .el-dialog{
  border-radius:12px!important;
  overflow:hidden;
}
.expense-edit-dialog .el-dialog__header{
  padding:18px 22px!important;
  margin-right:0;
  border-bottom:1px solid #eef1f5;
  background:#fff;
}
.expense-edit-dialog .el-dialog__title{
  color:#111827;
  font-size:18px;
  font-weight:900;
}
.expense-edit-dialog .el-dialog__body{
  max-height:68vh;
  overflow:auto;
  padding:18px 22px 10px!important;
  background:#f8fafc;
}
.expense-edit-dialog .el-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 14px;
}
.expense-edit-dialog .el-form-item{
  min-width:0;
  margin-bottom:0!important;
  padding:12px;
  border:1px solid #e5e7eb;
  border-radius:9px;
  background:#fff;
}
.expense-edit-dialog .el-form-item__label{
  color:#475467;
  font-weight:800;
}
.expense-edit-dialog .el-input__wrapper,
.expense-edit-dialog .el-select__wrapper,
.expense-edit-dialog .el-textarea__inner{
  border-radius:7px!important;
  background:#fff;
}
.expense-edit-dialog .upload-field{
  width:100%;
}
.expense-edit-dialog .drop-upload{
  min-height:66px;
  border-radius:8px;
  background:#fbfcfe;
}
.expense-edit-dialog .form-image-strip img{
  border-radius:8px;
}
.expense-edit-dialog .el-dialog__footer{
  padding:14px 22px!important;
  border-top:1px solid #eef1f5;
  background:#fff;
}
.expense-edit-dialog .el-dialog__footer .el-button{
  min-width:80px;
  border-radius:7px!important;
}

@media(max-width:1366px){
  .expense-module-page .table-stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .expense-module-page .pro-stat-card{padding-left:52px}
  .expense-module-page .pro-stat-card b{font-size:23px}
  .expense-module-page .pro-filter-card{grid-template-columns:1fr 1fr 1fr!important}
  .expense-module-page .pro-filter-card .filter-title{grid-column:1/-1}
  .expense-head{align-items:flex-start!important;flex-direction:column}
  .expense-head-actions{justify-content:flex-start}
  .expense-edit-dialog .el-form{grid-template-columns:1fr}
}
@media(max-width:900px){
  .expense-module-page .table-stat-row,
  .expense-module-page .expense-warning-strip{grid-template-columns:1fr 1fr}
  .expense-module-page .pro-filter-card{grid-template-columns:1fr!important}
}

.expense-ledger-page{max-width:none;padding-left:26px;padding-right:26px;background:#f5f7fa}
.expense-ledger-page .expense-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}
.expense-ledger-page .expense-head h1{font-size:30px!important;letter-spacing:0;color:#0f172a}
.expense-sync-line{display:flex;align-items:center;gap:10px;color:#64748b!important;font-size:13px!important;font-weight:700!important}
.expense-sync-line i{width:8px;height:8px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 4px #dcfce7}
.expense-sync-line em{font-style:normal;color:#94a3b8}
.expense-ledger-page .expense-head-actions{padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.04)}
.expense-ledger-page .expense-head-actions .el-button,.expense-ledger-page .expense-head-actions .el-select{height:38px}.expense-ledger-page .expense-head-actions .el-button.is-disabled{background:#e8eef8!important;color:#94a3b8!important;border-color:#e5e7eb!important;box-shadow:none!important}
.expense-summary-block{padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.045);margin-bottom:14px}.expense-summary-title{display:flex;align-items:flex-end;justify-content:space-between;margin:2px 4px 12px}.expense-summary-title b{font-size:17px;color:#0f172a}.expense-summary-title span{font-size:12px;color:#64748b;font-weight:700}.expense-summary-grid{display:grid;grid-template-columns:repeat(8,minmax(130px,1fr));gap:12px}.expense-summary-card{min-height:132px;padding:18px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.035);transition:.15s ease}.expense-summary-card.clickable{cursor:pointer}.expense-summary-card.clickable:hover{transform:translateY(-1px);border-color:#bfdbfe;box-shadow:0 12px 26px rgba(37,99,235,.09)}.expense-summary-card i{display:grid;place-items:center;width:34px;height:34px;margin-bottom:15px;border-radius:9px;background:#eff6ff;color:#2563eb;font-style:normal;font-weight:900}.expense-summary-card span{display:block;color:#334155;font-size:13px;font-weight:800}.expense-summary-card b{display:block;margin:9px 0 8px;color:#0f172a;font-size:24px;line-height:1;font-weight:950;font-variant-numeric:tabular-nums}.expense-summary-card small{color:#64748b;font-size:12px;font-weight:750}.expense-summary-card.green i{background:#dcfce7;color:#16a34a}.expense-summary-card.orange i{background:#ffedd5;color:#ea580c}.expense-summary-card.red{background:#fffafb}.expense-summary-card.red i{background:#fee2e2;color:#dc2626}.expense-summary-card.purple i{background:#f3e8ff;color:#7c3aed}.expense-summary-note{margin:10px 4px 0;color:#64748b;font-size:12px;font-weight:650}.expense-ledger-page .pro-filter-card{display:grid;grid-template-columns:180px repeat(6,minmax(140px,1fr)) 74px 74px;align-items:end;gap:12px;padding:16px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc;margin-bottom:14px;overflow:visible}.expense-ledger-page .filter-title{display:flex;flex-direction:column;gap:8px}.expense-ledger-page .filter-title b{font-size:13px;color:#0f172a}.expense-ledger-page .filter-title .el-select{min-width:160px!important}.expense-ledger-page .pro-filter-card .el-input,.expense-ledger-page .pro-filter-card .el-select,.expense-ledger-page .pro-filter-card .el-date-editor{width:100%!important}.expense-ledger-page .pro-table-panel>.el-card__header{padding:18px 20px!important}.expense-ledger-page .table-toolbar b{font-size:18px}.expense-ledger-page .data-table .el-table__header th{background:#f8fafc!important;color:#0f172a!important;font-weight:900}.expense-ledger-page .data-table .el-table__row:hover td{background:#f8fbff!important}.expense-ledger-page .money-cell{display:block;text-align:right;font-weight:850;color:#0f172a}.expense-ledger-page .tag-cell{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:850}.expense-ledger-page .tag-green{background:#dcfce7!important;color:#15803d!important;border-color:#bbf7d0!important}.expense-ledger-page .tag-orange{background:#ffedd5!important;color:#c2410c!important;border-color:#fed7aa!important}.expense-ledger-page .tag-red{background:#fee2e2!important;color:#dc2626!important;border-color:#fecaca!important}.expense-ledger-page .table-file-mini{border-radius:8px;border:1px solid #e5e7eb;background:#fff;padding:4px 6px}.expense-ledger-page .sheet-image-thumbs img{border-radius:7px;border:1px solid #e5e7eb}.expense-ledger-page .el-button.is-link.el-button--danger span{color:#dc2626!important}.expense-ledger-page .table-pagination{border-top:1px solid #eef2f7;padding-top:14px;justify-content:center;gap:14px}
@media (max-width:1500px){.expense-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.expense-ledger-page .pro-filter-card{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:900px){.expense-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-ledger-page .expense-head{display:block}.expense-ledger-page .expense-head-actions{margin-top:12px}.expense-ledger-page .pro-filter-card{grid-template-columns:1fr}}

/* Expense ledger final layout */
.expense-ledger-page{
  --elg-blue:#1677ff;
  --elg-bg:#f6f8fb;
  --elg-text:#172033;
  --elg-muted:#667085;
  --elg-line:#e8ecf2;
  max-width:none!important;
  padding:22px 24px 28px!important;
  background:var(--elg-bg)!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif;
}
.expense-ledger-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin:0 0 24px;
}
.expense-ledger-header h1{
  margin:0;
  color:var(--elg-text);
  font-size:24px!important;
  line-height:1.2;
  font-weight:700;
  letter-spacing:0;
}
.expense-ledger-header h1 span{
  margin-left:10px;
  color:#596579;
  font-size:13px;
  font-weight:400;
}
.expense-ledger-header p{
  margin:9px 0 0!important;
  color:#8892a4!important;
  font-size:13px!important;
  font-weight:400!important;
}
.expense-ledger-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.expense-ledger-actions .el-button{
  height:38px;
  padding:0 18px;
  border-radius:6px!important;
  border:1px solid #dde3ec!important;
  background:#fff!important;
  color:#344054!important;
  font-weight:600;
  box-shadow:none!important;
}
.expense-ledger-actions .el-button--primary{
  border-color:var(--elg-blue)!important;
  background:var(--elg-blue)!important;
  color:#fff!important;
}
.expense-ledger-stats{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin-bottom:18px;
}
.expense-ledger-stat{
  min-height:114px;
  padding:20px 18px 16px;
  border:1px solid #edf0f5;
  border-radius:10px;
  background:#fff;
  box-shadow:0 1px 2px rgba(16,24,40,.02),0 4px 12px rgba(16,24,40,.025);
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.expense-ledger-stat.clickable{cursor:pointer}
.expense-ledger-stat.clickable:hover,.expense-ledger-stat.active{
  border-color:#b7d5ff;
  background:#fbfdff;
  transform:translateY(-1px);
}
.expense-ledger-stat-icon{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  margin-right:10px;
  border-radius:10px;
  vertical-align:middle;
}
.expense-ledger-stat-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.expense-ledger-stat.blue .expense-ledger-stat-icon{background:#e8f1ff;color:#1677ff}
.expense-ledger-stat.green .expense-ledger-stat-icon{background:#e8f8f2;color:#18a673}
.expense-ledger-stat.orange .expense-ledger-stat-icon{background:#fff1dc;color:#f59f00}
.expense-ledger-stat.purple .expense-ledger-stat-icon{background:#f0ebff;color:#7c5cff}
.expense-ledger-stat.red .expense-ledger-stat-icon{background:#ffe9e9;color:#e5484d}
.expense-ledger-stat span{
  display:inline-block;
  color:#344054;
  font-size:13px;
  font-weight:600;
  vertical-align:middle;
}
.expense-ledger-stat b{
  display:block;
  margin:15px 0 8px;
  color:var(--elg-text);
  font-size:23px;
  line-height:1;
  font-weight:700;
  letter-spacing:-.4px;
  font-variant-numeric:tabular-nums;
}
.expense-ledger-stat small{
  color:#7a8699;
  font-size:12px;
  font-weight:500;
}
.expense-ledger-alerts{
  min-height:88px;
  display:grid;
  grid-template-columns:140px repeat(3,minmax(0,1fr)) 140px;
  gap:12px;
  align-items:center;
  margin-bottom:18px;
  padding:18px 20px;
  border:1px solid #fceaE8;
  border-radius:8px;
  background:#fff8f7;
}
.expense-ledger-alert-title{
  display:flex;
  align-items:center;
  gap:10px;
  color:#273142;
  font-size:14px;
  font-weight:700;
}
.expense-ledger-alert-title i{
  width:22px;height:22px;border-radius:999px;background:#f04438;position:relative;
}
.expense-ledger-alert-title i:after{
  content:"";position:absolute;left:10px;top:5px;width:2px;height:8px;background:#fff;border-radius:2px;box-shadow:0 10px 0 #fff;
}
.expense-ledger-alerts button{
  min-width:0;
  border:0;
  border-left:1px solid #f2deda;
  background:transparent;
  text-align:left;
  cursor:pointer;
}
.expense-ledger-alerts button.disabled{opacity:.45;cursor:default}
.expense-ledger-alerts button b{
  margin-right:4px;
  color:#e5484d;
  font-size:15px;
}
.expense-ledger-alerts button span{
  color:#344054;
  font-size:13px;
  font-weight:600;
}
.expense-ledger-alerts button small,.expense-ledger-alerts a{
  display:block;
  margin-top:8px;
  color:#175cd3;
  font-size:12px;
  font-weight:600;
  text-decoration:none;
  cursor:pointer;
}
.expense-ledger-page .pro-table-panel{
  border:1px solid var(--elg-line)!important;
  border-radius:10px!important;
  box-shadow:0 1px 2px rgba(16,24,40,.02),0 4px 12px rgba(16,24,40,.025)!important;
  overflow:hidden;
}
.expense-ledger-page .pro-table-panel>.el-card__header{
  padding:18px 20px!important;
  border-bottom:1px solid #eef1f5!important;
}
.expense-ledger-page .table-toolbar b{
  color:var(--elg-text);
  font-size:18px;
  font-weight:700;
}
.expense-ledger-filter-card{
  margin:0 0 16px;
  padding:18px;
  border:1px solid #edf0f5;
  border-radius:10px;
  background:#fff;
}
.expense-ledger-filter-main{
  display:grid;
  grid-template-columns:160px 180px 180px minmax(220px,1fr) 94px;
  gap:22px;
  align-items:end;
}
.expense-ledger-filter-main label{
  display:block;
  min-width:0;
}
.expense-ledger-filter-main label>span{
  display:block;
  margin-bottom:8px;
  color:#344054;
  font-size:13px;
  font-weight:600;
}
.expense-ledger-filter-card .el-input,
.expense-ledger-filter-card .el-select,
.expense-ledger-filter-card .el-date-editor{
  width:100%!important;
}
.expense-ledger-filter-card .el-input__wrapper,
.expense-ledger-filter-card .el-select__wrapper{
  min-height:38px!important;
  border-radius:6px!important;
  box-shadow:0 0 0 1px #dde3ec inset!important;
}
.expense-ledger-filter-card .el-input__wrapper.is-focus,
.expense-ledger-filter-card .el-select__wrapper.is-focused{
  box-shadow:0 0 0 1px var(--elg-blue) inset,0 0 0 2px rgba(22,119,255,.08)!important;
}
.expense-ledger-filter-toggle{
  height:38px;
  border:0;
  background:transparent;
  color:#667085;
  font-weight:600;
  cursor:pointer;
}
.expense-ledger-filter-extra{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:22px;
  color:#667085;
  font-size:13px;
}
.expense-ledger-filter-extra>div{
  margin-left:auto;
  display:flex;
  gap:10px;
}
.expense-ledger-filter-extra .el-button{
  height:38px;
  border-radius:6px!important;
}
.expense-ledger-page .data-table{
  border:1px solid #eef1f5!important;
  border-radius:8px!important;
  overflow:hidden;
}
.expense-ledger-page .data-table .el-table__header th{
  height:46px!important;
  background:#fafbfc!important;
  color:#566176!important;
  font-size:13px!important;
  font-weight:600!important;
}
.expense-ledger-page .data-table td.el-table__cell>.cell{
  min-height:64px!important;
  color:#273142;
  font-size:13px;
  font-weight:500!important;
}
.expense-ledger-page .data-table .el-table__row:hover>td{
  background:#fafcff!important;
}
.expense-ledger-page .money-cell{
  display:block!important;
  text-align:right!important;
  color:#172033!important;
  font-weight:650!important;
  font-variant-numeric:tabular-nums;
}
.expense-ledger-page .tag-cell{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-width:0;
  padding:4px 9px;
  border:0!important;
  border-radius:999px;
  font-size:12px;
  font-weight:500!important;
  line-height:1.2;
}
.expense-ledger-page .tag-green{background:#e8f8f1!important;color:#18a673!important}
.expense-ledger-page .tag-orange{background:#fff4df!important;color:#e58a00!important}
.expense-ledger-page .tag-red{background:#ffecec!important;color:#e5484d!important}
.expense-ledger-page .tag-blue{background:#eef4ff!important;color:#175cd3!important}
.expense-ledger-page .sheet-image-cell{
  width:auto;
  max-width:92px;
  height:42px;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.expense-ledger-page .sheet-image-thumbs{
  display:flex;
  align-items:center;
  gap:4px;
}
.expense-ledger-page .sheet-image-thumbs img{
  width:36px!important;
  height:36px!important;
  border-radius:5px!important;
  object-fit:cover;
  border:1px solid #e8ecf2;
}
.expense-ledger-page .sheet-image-thumbs small{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:5px;
  background:#f2f4f7;
  color:#344054;
  font-size:12px;
  font-weight:700;
}
.expense-ledger-page .sheet-image-toggle{display:none}
.ledger-row-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.ledger-icon-btn{
  width:28px;
  height:28px;
  border:0;
  border-radius:6px;
  background:transparent;
  cursor:pointer;
  position:relative;
}
.ledger-icon-btn:hover{background:#f2f7ff}
.ledger-icon-btn:before,.ledger-icon-btn:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}
.ledger-icon-btn.view:before{width:15px;height:10px;border:1.8px solid #175cd3;border-radius:50%}
.ledger-icon-btn.view:after{width:4px;height:4px;border-radius:50%;background:#175cd3}
.ledger-icon-btn.edit:before{width:13px;height:13px;border:1.8px solid #1677ff;border-radius:3px}
.ledger-icon-btn.edit:after{width:9px;height:2px;background:#1677ff;transform:translate(-30%,-65%) rotate(-35deg)}
.ledger-icon-btn.del:before{width:12px;height:13px;border:1.8px solid #e5484d;border-top:0;border-radius:0 0 3px 3px}
.ledger-icon-btn.del:after{width:14px;height:2px;background:#e5484d;transform:translate(-50%,-9px)}
.expense-ledger-page .table-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between!important;
  padding:18px 0 0!important;
  border-top:1px solid #eef1f5;
}
.expense-ledger-page .el-pagination .el-pager li,
.expense-ledger-page .el-pagination button{
  min-width:34px!important;
  height:34px!important;
  border-radius:6px!important;
}
.expense-ledger-drawer .el-drawer{
  width:370px!important;
  box-shadow:-8px 0 26px rgba(16,24,40,.08)!important;
}
.expense-detail-panel{
  height:100%;
  display:flex;
  flex-direction:column;
  color:#172033;
  background:#fff;
}
.expense-detail-panel header{
  height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 18px;
  border-bottom:1px solid #eef1f5;
}
.expense-detail-panel header b{font-size:16px;font-weight:700}
.expense-detail-panel header button{
  border:0;
  background:transparent;
  color:#667085;
  font-size:22px;
  cursor:pointer;
}
.expense-detail-panel section{
  padding:16px 18px;
  border-bottom:1px solid #eef1f5;
}
.expense-detail-panel h4{
  margin:0 0 14px;
  color:#172033;
  font-size:14px;
  font-weight:700;
}
.expense-detail-panel p,.expense-detail-panel section>div{
  display:grid;
  grid-template-columns:106px minmax(0,1fr);
  gap:12px;
  margin:0 0 12px;
  font-size:13px;
}
.expense-detail-panel span{color:#667085}
.expense-detail-panel b{
  min-width:0;
  color:#273142;
  font-weight:600;
  word-break:break-word;
}
.expense-detail-panel a{
  color:#175cd3;
  font-weight:600;
  text-decoration:none;
}
.expense-detail-files{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
}
.expense-detail-files img{
  width:38px;
  height:38px;
  border-radius:5px;
  border:1px solid #e8ecf2;
  object-fit:cover;
  cursor:pointer;
}
.expense-detail-files small{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:5px;
  background:#f2f4f7;
  font-size:12px;
}
.expense-detail-panel footer{
  margin-top:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:14px 18px;
  border-top:1px solid #eef1f5;
}
.expense-detail-panel footer .el-button{
  height:38px;
  border-radius:6px!important;
  background:#fff!important;
}
@media(max-width:1440px){
  .expense-ledger-page{padding-left:20px!important;padding-right:20px!important}
  .expense-ledger-stats{gap:8px}
  .expense-ledger-stat{padding:16px 12px}
  .expense-ledger-stat b{font-size:21px}
}
@media(max-width:900px){
  .expense-ledger-page{padding:14px 12px 24px!important}
  .expense-ledger-header{display:block}
  .expense-ledger-actions{justify-content:flex-start;margin-top:14px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .expense-ledger-actions .el-button{flex:0 0 auto}
  .expense-ledger-stats{
    display:flex;
    overflow-x:auto;
    padding-bottom:8px;
    scroll-snap-type:x proximity;
  }
  .expense-ledger-stat{
    flex:0 0 168px;
    min-height:112px;
    scroll-snap-align:start;
  }
  .expense-ledger-stat b{
    white-space:nowrap;
    font-size:21px;
  }
  .expense-ledger-alerts{
    grid-template-columns:1fr;
    min-height:0;
    padding:14px;
  }
  .expense-ledger-alerts button{border-left:0;border-top:1px solid #f2deda;padding-top:10px}
  .expense-ledger-filter-main{grid-template-columns:1fr;gap:12px}
  .expense-ledger-filter-extra{align-items:flex-start;flex-wrap:wrap}
  .expense-ledger-filter-extra>div{width:100%;margin-left:0}
  .expense-ledger-page .top-table-scroll{display:none}
  .expense-ledger-page .data-table{overflow:auto!important}
  .expense-ledger-page .data-table .el-table__inner-wrapper{min-width:760px}
  .expense-ledger-drawer .el-drawer{width:min(92vw,370px)!important}
}
