
#expense-preview{--ep-bg:light-dark(#f5f7fb,#151a23);--ep-panel:light-dark(#ffffff,#202733);--ep-text:light-dark(#1f2937,#ecf0f7);--ep-sub:light-dark(#667085,#b0bac9);--ep-line:light-dark(#e7ebf1,#394352);--ep-blue:light-dark(#3166e8,#8db4ff);--ep-soft:light-dark(#edf3ff,#283b5b);--ep-green:light-dark(#17816c,#77cfb8);--ep-red:light-dark(#cc4040,#ff9898);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ep-text);position:relative;background:var(--ep-bg);border:1px solid var(--ep-line);border-radius:14px;overflow:clip;isolation:isolate}
#expense-preview *{box-sizing:border-box}#expense-preview [hidden]{display:none!important}
#expense-preview h1,#expense-preview h2,#expense-preview h3,#expense-preview p{margin:0}#expense-preview button,#expense-preview input,#expense-preview select,#expense-preview textarea{font:inherit}
#expense-preview button{cursor:var(--cursor-interaction,pointer)}#expense-preview button:disabled{opacity:.5;cursor:not-allowed}
#expense-preview button:focus-visible,#expense-preview input:focus-visible,#expense-preview textarea:focus-visible,#expense-preview select:focus-visible{outline:2px solid var(--ep-blue);outline-offset:3px}
#expense-preview .ep-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:var(--ep-panel);border-bottom:1px solid var(--ep-line)}
#expense-preview .ep-brand{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600}#expense-preview .ep-logo{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#079b8d;color:white;font-size:18px}
#expense-preview .ep-demo{font-size:12px;color:var(--ep-sub)}#expense-preview .ep-nav{display:flex;gap:24px;padding:0 24px;background:var(--ep-panel);border-bottom:1px solid var(--ep-line)}
#expense-preview .ep-nav button{background:none;color:var(--ep-sub);border:0;border-bottom:2px solid transparent;padding:13px 0;white-space:nowrap}#expense-preview .ep-nav button[aria-current=page]{color:var(--ep-blue);border-bottom-color:var(--ep-blue);font-weight:600}
#expense-preview .ep-body{padding:24px}#expense-preview .ep-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}#expense-preview h1{font-size:23px;font-weight:600;letter-spacing:-.4px}#expense-preview h2{font-size:16px;font-weight:600}#expense-preview h3{font-size:14px;font-weight:600}
#expense-preview .ep-muted{color:var(--ep-sub);font-size:12px}#expense-preview .ep-top-note{margin-top:4px;color:var(--ep-sub)}#expense-preview .ep-pill{font-size:12px;padding:4px 9px;background:var(--ep-soft);border-radius:20px;color:var(--ep-blue);white-space:nowrap}
#expense-preview .ep-layout{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:20px;align-items:start}#expense-preview .ep-layout.ep-stacked{grid-template-columns:1fr}
#expense-preview .ep-section-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}#expense-preview .ep-group{background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:10px;margin-bottom:14px;overflow:hidden}
#expense-preview .ep-group-head{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--ep-line)}#expense-preview .ep-group-head>div:first-child{min-width:0}#expense-preview .ep-group-head h3{overflow-wrap:anywhere}#expense-preview .ep-money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
#expense-preview .ep-invoice{padding:13px 16px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;column-gap:10px;align-items:center;border-bottom:1px solid var(--ep-line)}#expense-preview .ep-doc{width:30px;height:38px;border:1px solid var(--ep-line);border-radius:4px;background:var(--ep-bg);display:flex;align-items:center;justify-content:center;color:var(--ep-sub);font-size:10px}
#expense-preview .ep-invoice-name{font-weight:500;overflow-wrap:anywhere}#expense-preview .ep-invoice-meta{color:var(--ep-sub);font-size:12px;margin-top:3px;overflow-wrap:anywhere}#expense-preview .ep-row-end{text-align:right}#expense-preview .ep-row-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px;flex-wrap:wrap}
#expense-preview .ep-link{padding:0;border:0;background:none;color:var(--ep-blue);font-size:12px}#expense-preview .ep-link.ep-danger{color:var(--ep-sub)}#expense-preview .ep-link:hover{text-decoration:underline}#expense-preview .ep-link.ep-danger:hover{color:var(--ep-red)}
#expense-preview .ep-upload-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;flex-wrap:wrap}#expense-preview .ep-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--ep-line);background:var(--ep-panel);color:var(--ep-text);padding:8px 13px;border-radius:7px;white-space:nowrap;min-height:36px}
#expense-preview .ep-btn:hover{background:var(--ep-bg)}#expense-preview .ep-btn.ep-primary{background:var(--ep-blue);border-color:var(--ep-blue);color:light-dark(#fff,#112b59);font-weight:500}#expense-preview .ep-btn.ep-quiet{color:var(--ep-blue);background:var(--ep-soft);border-color:transparent}
#expense-preview .ep-info{padding:18px;background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:10px}#expense-preview .ep-info h2{margin-bottom:16px}#expense-preview label.ep-field{display:block;margin-top:16px;color:var(--ep-sub);font-size:12px}#expense-preview label.ep-field:first-of-type{margin-top:0}
#expense-preview .ep-input{display:block;width:100%;border:1px solid var(--ep-line);border-radius:6px;color:var(--ep-text);background:var(--ep-panel);padding:9px 10px;margin-top:6px;min-width:0}#expense-preview textarea.ep-input{resize:vertical;min-height:82px}#expense-preview select.ep-input{max-width:100%;text-overflow:ellipsis}
#expense-preview .ep-company{padding:10px 0;color:var(--ep-text);font-size:14px}#expense-preview .ep-auto{font-size:11px;color:var(--ep-green);margin-top:4px}#expense-preview .ep-summary{border-top:1px solid var(--ep-line);margin-top:18px;padding-top:16px;display:grid;gap:9px}#expense-preview .ep-summary-line{display:flex;justify-content:space-between;gap:8px;color:var(--ep-sub);font-size:12px}#expense-preview .ep-summary-total{color:var(--ep-text);font-size:14px}#expense-preview .ep-summary-total strong{font-size:23px;color:var(--ep-blue);font-weight:600;letter-spacing:-.5px}
#expense-preview .ep-footer{padding:16px 24px;background:var(--ep-panel);border-top:1px solid var(--ep-line);display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}#expense-preview .ep-footer-actions{display:flex;gap:10px;flex-wrap:wrap}#expense-preview .ep-footer-note{font-size:12px;color:var(--ep-sub);margin-top:3px}#expense-preview .ep-empty{padding:30px 16px;text-align:center;color:var(--ep-sub)}
#expense-preview .ep-banner{padding:10px 24px;background:var(--ep-soft);color:var(--ep-blue);font-size:12px}#expense-preview .ep-overlay{position:absolute;inset:0;background:light-dark(#14233e40,#00000085);z-index:20;display:flex;justify-content:center;align-items:flex-start;padding:54px 16px 24px}
#expense-preview .ep-dialog{width:100%;max-width:540px;background:var(--ep-panel);border:1px solid var(--ep-line);box-shadow:0 16px 48px #0002;border-radius:12px;padding:22px;outline:none}#expense-preview .ep-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}#expense-preview .ep-dialog-head h2{font-size:18px}#expense-preview .ep-close{border:0;background:none;padding:4px 8px;color:var(--ep-sub);font-size:20px}
#expense-preview .ep-dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}#expense-preview .ep-choice{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--ep-line)}#expense-preview .ep-choice input{accent-color:var(--ep-blue);width:17px;height:17px}#expense-preview .ep-choice-text{flex:1;min-width:0}#expense-preview .ep-dialog-note{font-size:12px;color:var(--ep-sub);margin-bottom:8px}
#expense-preview .ep-detail{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px 16px;padding:14px 0;font-size:13px}#expense-preview .ep-detail dt{color:var(--ep-sub)}#expense-preview .ep-detail dd{margin:0;overflow-wrap:anywhere}#expense-preview .ep-review-row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--ep-line)}#expense-preview .ep-review-row>div:first-child{min-width:0;overflow-wrap:anywhere}#expense-preview .ep-error{color:var(--ep-red);margin:12px 0;font-size:12px}#expense-preview .ep-success{padding:20px 0;text-align:center}#expense-preview .ep-success-mark{color:var(--ep-green);font-size:34px;margin-bottom:10px}#expense-preview .ep-history-row{background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:9px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}#expense-preview .ep-list-view{min-height:380px}
#expense-preview.ep-compact .ep-invoice-meta{display:none}#expense-preview.ep-compact .ep-invoice{padding-top:10px;padding-bottom:10px}
@media(max-width:800px){#expense-preview .ep-layout{grid-template-columns:1fr}#expense-preview .ep-info-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}#expense-preview .ep-info-fields .ep-company-field{grid-column:1/-1}#expense-preview .ep-info-fields label.ep-field{margin-top:12px}#expense-preview .ep-info-fields label.ep-field:last-child{grid-column:1/-1}}
@media(max-width:480px){#expense-preview .ep-top{padding:14px;gap:8px;align-items:flex-start}#expense-preview .ep-brand{font-size:15px}#expense-preview .ep-demo{max-width:120px;text-align:right}#expense-preview .ep-nav{padding:0 14px;gap:22px}#expense-preview .ep-body{padding:16px 12px}#expense-preview .ep-heading{margin-bottom:16px}#expense-preview h1{font-size:21px}#expense-preview .ep-group-head{padding:12px}#expense-preview .ep-invoice{padding:12px;grid-template-columns:28px minmax(0,1fr);gap:9px}#expense-preview .ep-row-end{grid-column:2;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}#expense-preview .ep-row-actions{gap:12px;margin:0}#expense-preview .ep-info-fields{display:block}#expense-preview .ep-footer{padding:14px;align-items:stretch}#expense-preview .ep-footer-actions{width:100%}#expense-preview .ep-footer-actions .ep-btn{flex:1}#expense-preview .ep-dialog{padding:18px}#expense-preview .ep-overlay{padding:30px 10px}#expense-preview .ep-history-row{flex-wrap:wrap}#expense-preview .ep-banner{padding:10px 14px}}
@media(pointer:coarse){#expense-preview .ep-btn,#expense-preview .ep-link,#expense-preview .ep-close{min-height:44px}#expense-preview .ep-input{font-size:16px}}

body {margin:0; background:#f5f6f8;}
#expense-preview {max-width:1280px; margin:auto; min-height:100vh;}
#expense-preview .ep-overlay {position:fixed; overflow:auto; max-height:100dvh;}
#expense-preview [hidden] {display:none!important;}
#expense-preview button:disabled {opacity:.55;cursor:wait;}
#expense-preview .ep-loading {padding:60px 20px;text-align:center;}
#expense-preview .ep-error-banner {color:var(--ep-red);}
#expense-preview a.ep-btn {text-decoration:none;}
#expense-preview input[type=file] {display:none;}
#expense-preview .ep-claim{display:flex;gap:6px;align-items:flex-end;flex-direction:column;flex-shrink:0}#expense-preview .ep-upload-buttons{display:flex;gap:8px;flex-wrap:wrap}#expense-preview .ep-upload-row{flex-wrap:wrap;gap:10px}#expense-preview .ep-proofs{border-top:1px solid var(--ep-line);padding:12px 16px}#expense-preview .ep-proof-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:5px 0}#expense-preview .ep-proof-row a{color:var(--ep-blue);overflow-wrap:anywhere;min-width:0}#expense-preview .ep-group-head>div:first-child{min-width:0;overflow-wrap:anywhere}
.ep-list-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.ep-list-bottom{margin-top:18px}
.ep-finance-filters{display:grid;grid-template-columns:180px minmax(180px,1fr) 155px 155px auto;gap:12px;align-items:end;margin-bottom:18px}
#expense-preview .ep-finance-filters label.ep-field{margin:0}
.ep-finance-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.ep-finance-totals>div{padding:16px;background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:8px}
.ep-finance-totals span{display:block;color:var(--ep-sub);font-size:12px;margin-bottom:8px}
.ep-finance-totals strong{font-size:21px}
.ep-finance-scroll{overflow:auto;border:1px solid var(--ep-line);border-radius:8px;margin-top:14px}
.ep-finance-table{width:100%;border-collapse:collapse;min-width:1000px;font-size:12px;text-align:left;background:var(--ep-panel)}
.ep-finance-table th,.ep-finance-table td{padding:14px 12px;border-bottom:1px solid var(--ep-line);vertical-align:top;max-width:240px;overflow-wrap:anywhere}
.ep-finance-table th{white-space:nowrap;color:var(--ep-sub);font-weight:500}
.ep-finance-table small{display:block;font-size:12px;color:var(--ep-sub);margin-top:6px}
.ep-finance-pager{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin:16px 0}
.ep-proof-title{margin-top:22px!important}
#expense-preview .ep-nav{overflow-x:auto;white-space:nowrap}
@media(max-width:1000px){.ep-finance-filters{grid-template-columns:1fr 1fr}.ep-finance-filters>.ep-btn{justify-self:start}.ep-finance-totals{grid-template-columns:1fr 1fr}}
#expense-preview .ep-danger{color:var(--ep-red)}
@media(max-width:640px){#expense-preview .ep-history-row{flex-wrap:wrap}.ep-history-row .ep-list-actions{width:100%;justify-content:flex-start}}
