.pfs{display:grid;gap:16px;min-width:0;color:var(--text,#17364d)}.pfs-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.pfs h3{font-size:18px;margin:0 0 5px}.pfs p{margin:0;line-height:1.5}.pfs-heading p,.pfs-note,.pfs-empty{font-size:12px;color:var(--muted,#647e90)}.pfs-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pfs-stats>div{border:1px solid var(--line,#dce7ef);border-radius:10px;padding:12px;background:var(--surface-soft,#f4f8fb);display:grid;gap:6px;min-width:0}.pfs-stats small{color:var(--muted,#607b8e)}.pfs-stats strong{font-size:17px;overflow-wrap:anywhere}.pfs-credit{border:1px solid var(--line,#cce3e9);border-left:3px solid var(--brand,#087f9c);border-radius:10px;padding:14px;background:var(--surface-soft,#f2f8fa)}.pfs-credit>div{display:flex;justify-content:space-between;gap:8px}.pfs-credit>div>span{font-size:12px;color:var(--muted,#607b8e)}.pfs-credit dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.pfs-credit dt{font-size:11px;color:var(--muted,#607b8e)}.pfs-credit dd{margin:5px 0 0;font-weight:650;overflow-wrap:anywhere}.pfs-credit>small{font-size:11px;line-height:1.5;color:var(--muted,#607b8e)}.pfs-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.pfs-filters label{display:grid;gap:6px;font-size:12px;min-width:0}.pfs-filters input{min-width:0;width:100%;box-sizing:border-box;height:42px;border:1px solid var(--line,#d4e1eb);border-radius:9px;padding:0 12px;background:var(--surface,#fff);color:inherit}.pfs-tabs{display:flex;flex-wrap:wrap;gap:6px}.pfs-tabs button{display:flex;justify-content:center;gap:8px;align-items:center;min-height:40px;border:1px solid var(--line,#d6e3ec);background:var(--surface,#fff);color:inherit;padding:8px 12px;border-radius:8px;font:inherit;font-size:12px;cursor:pointer}.pfs-tabs button[aria-pressed=true]{border-color:var(--brand,#087f9c);background:var(--brand,#087f9c);color:white}.pfs-tabs button>span{font-size:11px;min-width:20px;text-align:center;border-radius:5px;background:rgba(100,150,160,.15);padding:2px 4px}.pfs-tabs button[aria-pressed=true]>span{background:rgba(255,255,255,.2);color:white}.pfs-document{border:1px solid var(--line,#d7e4ed);border-radius:10px;overflow:hidden;background:var(--surface,#fff)}.pfs-documents{display:grid;gap:9px}.pfs-document-head{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.9fr) 16px;gap:12px;align-items:center;border:0;background:var(--surface-soft,#f4f8fb);text-align:left;padding:14px;color:inherit;cursor:pointer;font:inherit}.pfs-document-head small{display:block;font-size:11px;color:var(--muted,#657d8c);margin-top:5px;line-height:1.4}.pfs-doc-totals,.pfs-title-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;font-size:10px;color:var(--muted,#657d8c)}.pfs-doc-totals b,.pfs-title-totals b{display:block;color:var(--text,#17364d);margin-top:4px;font-size:12px;overflow-wrap:anywhere}.pfs-title{display:grid;gap:12px;padding:14px;border-top:1px solid var(--line,#d7e4ed)}.pfs-title-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pfs-title>p{font-size:11px;color:var(--muted,#657d8c)}.pfs-title>button{justify-self:start}.pfs-status{font-size:10px;border-radius:6px;padding:5px 8px;background:#edf4f8;color:#536b7e}.pfs-status.is-paid{background:#e4f5ec;color:#136748}.pfs-status.is-partial{background:#e6f5fa;color:#08647b}.pfs-status.is-overdue{background:#fff0ef;color:#a13535}.pfs-status.is-open{background:#fff4df;color:#835712}.pfs-history{display:grid;gap:12px;padding:12px;background:var(--surface-soft,#f6f9fb);border:1px solid var(--line,#d7e4ed);border-radius:8px}.pfs-history>div{display:grid;gap:8px;border-top:1px solid var(--line,#d7e4ed);padding-top:12px}.pfs-history p{font-size:11px}.pfs-history button{justify-self:start}.pfs-pager{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--muted,#657d8c)}.pfs-pager>div{display:flex;gap:12px;align-items:center}.pfs-error{color:#a13535;background:#fff0ef;padding:12px;border-radius:8px;font-size:12px}.pfs-empty{padding:16px;border:1px dashed var(--line,#d7e4ed);border-radius:9px}.pfs .fin-portfolio-exports{display:flex;flex-wrap:wrap;gap:6px}.pfs .fin-document-export-option{display:flex;align-items:flex-start;gap:7px;font-size:11px;line-height:1.5;margin-top:8px}.pfs .btn{min-height:38px}.pfs button:focus-visible{outline:2px solid var(--brand,#087f9c);outline-offset:2px}
@media(max-width:760px){.pfs-heading{display:grid}.pfs-heading button{justify-self:start}.pfs-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pfs-stats strong{font-size:15px}.pfs-filters{grid-template-columns:minmax(0,1fr)}.pfs-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pfs-document-head{grid-template-columns:minmax(0,1fr) 16px;gap:12px;padding:12px}.pfs-document-head>span:first-child{grid-column:1;grid-row:1}.pfs-document-head>span:last-child{grid-column:2;grid-row:1}.pfs-doc-totals{grid-column:1/-1;grid-row:2}.pfs-credit>div{display:grid;gap:5px}.pfs-credit dl{grid-template-columns:minmax(0,1fr);gap:9px}.pfs-credit dl>div{display:flex;justify-content:space-between;align-items:center;gap:8px}.pfs-credit dd{margin:0;text-align:right}.pfs .fin-portfolio-exports{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pfs-pager{display:grid}.pfs-pager>div{justify-content:space-between}.pfs-title{padding:12px}.pfs .btn{min-height:42px}}

.fin-title-context{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;min-width:0;text-align:left}.fw-document>.fin-title-context{padding:0 16px 12px 50px;background:var(--surface,#fff)}.fin-context-group{min-width:0}.fin-context-label{display:block;color:var(--muted,#6b8295);font-size:9px;font-weight:600;margin-bottom:5px}.fin-context-value{display:flex;align-items:flex-start;gap:8px;min-width:0}.fin-context-value>div{min-width:0}.fin-context-value strong{display:block;font-size:11px;color:var(--text,#28465b);font-weight:600;line-height:1.4;overflow-wrap:anywhere}.fin-context-value small{display:block;font-size:10px;color:var(--muted,#657f93);line-height:1.4;margin-top:2px;overflow-wrap:anywhere}.fin-context-value em{font-size:9px;font-style:normal;margin-left:5px;color:var(--muted,#657f93)}.fin-context-mark{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--line,#d6e3ec);border-radius:7px;background:var(--surface-soft,#edf4f8);overflow:hidden;color:var(--muted,#698499);font-size:10px;font-weight:700}.fin-context-mark img{width:100%;height:100%;object-fit:contain;background:white}.fin-context-value.is-missing strong{color:var(--muted,#718596);font-weight:500}.fin-context-mixed summary{cursor:pointer;list-style:none;display:grid;gap:3px;color:var(--text,#28465b)}.fin-context-mixed summary::-webkit-details-marker{display:none}.fin-context-mixed summary strong{font-size:11px;line-height:1.4;overflow-wrap:anywhere}.fin-context-mixed summary>span{font-size:9px;color:var(--brand,#087f9c)}.fin-context-mixed>div{display:grid;gap:10px;padding:10px;margin-top:6px;border:1px solid var(--line,#d6e3ec);border-radius:8px;background:var(--surface-soft,#f1f7fa)}.fin-title-context.is-compact{margin-top:5px;gap:8px}.fin-title-context.is-compact .fin-context-mark{width:23px;height:23px;flex-basis:23px}.fin-title-context.is-compact .fin-context-value strong{font-size:10px}.fin-title-context.is-compact .fin-context-value small{font-size:9px}@media(max-width:760px){.fw-document>.fin-title-context{padding:0 12px 12px 40px;gap:10px}.fin-context-mixed summary{min-height:40px}.fin-title-context.is-compact{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}@media(max-width:359px){.fw-document>.fin-title-context{padding-left:12px;grid-template-columns:1fr;gap:10px}.fin-title-context.is-compact{grid-template-columns:1fr}.fin-context-value{gap:7px}}

/* Paired metadata panels share alignment; mobile uses compact full-width rows. */
.fin-title-context{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:stretch;gap:8px}
.fin-context-group{padding:10px 12px;border:1px solid var(--line,#dbe6ed);border-radius:9px;background:var(--surface-soft,#f5f8fb)}
.fin-context-label{font-size:10px;line-height:1.4;margin:0 0 6px 36px}
.fin-context-value{gap:8px;align-items:flex-start}.fin-context-mark{background:var(--surface,#fff)}
.fin-context-value.is-center{align-items:center;min-height:28px}
.fin-context-value.is-center .fin-context-mark{color:var(--brand,#087f9c);border-color:transparent;background:transparent}
.fin-context-mixed summary{padding-left:0}.fin-context-mixed>div{background:var(--surface,#fff)}
.fin-title-context.is-compact .fin-context-group{padding:8px}.fin-title-context.is-compact .fin-context-label{margin-left:31px}
@media(max-width:760px){
 .fin-title-context,.fin-title-context.is-compact{grid-template-columns:minmax(0,1fr);gap:6px}
 .fin-context-group{padding:9px 10px}.fin-context-label{margin-bottom:3px}
 .fin-context-value strong{font-size:11px}.fin-context-value small{font-size:10px}
 .fin-context-group:last-child .fin-context-label{margin-bottom:0}
 .fin-context-value.is-center{min-height:22px}
 .fin-context-mixed summary{min-height:38px}
}

.fin-settlement-origin{display:grid;gap:5px;min-width:0;max-width:290px;margin-top:6px;white-space:normal;font-size:11px;line-height:1.45}.fin-settlement-origin-badge{justify-self:start;background:var(--surface-soft,#eef3f7);border:1px solid var(--line,#d8e4ec);color:var(--text,#36516a);padding:4px 7px;border-radius:6px;font-weight:600;font-size:10px;white-space:normal}.fin-settlement-origin.is-cnab .fin-settlement-origin-badge{background:#e7f7f3;color:#17664e;border-color:#b4dfd0}.fin-settlement-origin.is-reversed .fin-settlement-origin-badge{background:#fff0f0;color:#9a3b45;border-color:#edc8cd}.fin-settlement-origin small{display:block!important;font-size:10px;color:var(--muted,#647e91)}.fin-settlement-file,.fin-settlement-origin dd,.fin-settlement-origin p{overflow-wrap:anywhere}.fin-settlement-origin details{font-size:10px}.fin-settlement-origin summary{cursor:pointer;color:var(--brand,#087f9c);font-weight:600;padding:4px 0}.fin-settlement-origin dl{display:grid;gap:7px;margin:7px 0;padding:9px;border-radius:8px;background:var(--surface-soft,#f0f6f9)}.fin-settlement-origin dt{color:var(--muted,#6a8094);font-size:9px}.fin-settlement-origin dd{margin:2px 0 0;font-size:10px;color:var(--text,#29475d)}.fin-settlement-origin p{margin:5px 0;color:var(--muted,#647e91)}@media(max-width:760px){.fin-settlement-origin summary{min-height:36px;display:flex;align-items:center}.fin-settlement-origin .ops-text-button{min-height:40px}.fin-settlement-origin{max-width:100%}}[data-theme=dark] .fin-settlement-origin.is-cnab .fin-settlement-origin-badge{background:#173e35;color:#9ce0c1;border-color:#285b4b}[data-theme=dark] .fin-settlement-origin.is-reversed .fin-settlement-origin-badge{background:#492a32;color:#ffc5ca;border-color:#70404a}

.drp{position:relative;display:inline-block}
.drp-trigger{display:inline-flex;align-items:center;gap:9px;min-height:39px;padding:8px 13px;border:1px solid #dfe6ee;border-radius:9px;background:#fff;color:#37485c;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .16s,box-shadow .16s;white-space:nowrap}
.drp-trigger:hover{border-color:#bccbd8}
.drp-trigger:focus-visible{outline:3px solid #1ba7c826;outline-offset:1px;border-color:var(--primary,#0b8fad)}
.drp-trigger>span{color:#26374a}
.drp-trigger svg:first-child{color:var(--primary,#0b8fad);flex-shrink:0}
.drp-caret{color:#9aa8b6;transition:transform .18s}
.drp-caret-up{transform:rotate(180deg)}
.drp-pop{position:fixed;z-index:1000;background:#fff;border:1px solid #e4ebf1;border-radius:14px;box-shadow:0 18px 48px -12px #1c2f4426,0 4px 12px #1c2f4410;overflow:hidden;animation:drp-in .14s ease-out;max-width:calc(100vw - 20px)}
.drp-pop-left{left:0}
.drp-pop-right{right:0}
@keyframes drp-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.drp-body{display:flex;align-items:stretch}
.drp-presets{display:flex;flex-direction:column;gap:2px;padding:9px;width:148px;border-right:1px solid #eef2f6;background:#fafcfd;background:color-mix(in srgb, var(--brand) 2%, #fff)}
.drp-presets button{display:flex;align-items:center;gap:7px;min-height:32px;padding:6px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#51637a;font:inherit;font-size:11.5px;font-weight:500;text-align:left;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.drp-presets button>span{flex:1}
.drp-presets button svg{color:var(--primary,#0b8fad);flex-shrink:0}
.drp-presets button:hover{background:#eef7fa;background:color-mix(in srgb, var(--brand) 7%, #fff);color:#256b7f;color:color-mix(in srgb, var(--brand) 48%, color-mix(in srgb, #fff 21.2%, #10283f))}
.drp-presets button.active{background:#e6f5f9;background:color-mix(in srgb, var(--brand) 9%, #fff);border-color:#bfe3ea;border-color:color-mix(in srgb, var(--brand) 25%, #fff);color:#0a7286;color:color-mix(in srgb, var(--brand) 80%, #10283f);font-weight:600}
.drp-cal{padding:10px 12px;min-width:0}
.drp-cal-nav{display:flex;justify-content:space-between;pointer-events:none;height:0;position:relative;z-index:5}
.drp-cal-nav button{pointer-events:auto;position:relative;z-index:6;width:28px;height:26px;display:grid;place-items:center;border:1px solid #e4ebf1;border-radius:8px;background:#fff;color:#5c6f82;cursor:pointer;transition:background .15s,border-color .15s}
.drp-cal-nav button:hover{background:#f2f8fb;background:color-mix(in srgb, var(--brand) 5%, #fff);border-color:#c6d6e0;color:var(--primary,#0b8fad)}
.drp-months{display:flex;gap:14px}
.drp-month{width:196px}
.drp-month-head{display:flex;align-items:baseline;justify-content:center;gap:8px;height:26px;margin-bottom:4px}
.drp-month-head span{font-size:13px;font-weight:700;color:#2a3d53;text-transform:capitalize}
.drp-month-head strong{font-size:13px;font-weight:700;color:#8394a4}
.drp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}
.drp-weekdays span{text-align:center;font-size:10px;font-weight:600;color:#9aa8b6;padding:3px 0}
.drp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px 0}
.drp-cell{height:29px;border:0;background:transparent;font:inherit;font-size:12px;color:#3f5266;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:0;position:relative;transition:background .12s,color .12s}
.drp-empty{cursor:default}
.drp-cell:not(.drp-empty):hover{background:#eef7fa;background:color-mix(in srgb, var(--brand) 7%, #fff)}
.drp-cell.drp-in{background:#e6f5f9;background:color-mix(in srgb, var(--brand) 9%, #fff);border-radius:0}
.drp-cell.drp-today{font-weight:700;color:var(--primary,#0b8fad)}
.drp-cell.drp-edge{background:var(--primary,#0b8fad);color:#fff;font-weight:700;border-radius:9px}
.drp-cell.drp-edge:hover{background:var(--primary-dark,#0a7286);background:var(--primary-dark,color-mix(in srgb, var(--brand) 80%, #10283f))}
.drp-cell.drp-edge.drp-today{color:#fff}
.drp-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid #eef2f6;background:#fafcfd;background:color-mix(in srgb, var(--brand) 2%, #fff)}
.drp-inputs{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.drp-inputs input{border:1px solid #dfe6ed;border-radius:8px;padding:6px 9px;font:inherit;font-size:12px;color:#26374a;min-height:34px;background:#fff}
.drp-inputs input:focus{outline:0;border-color:var(--primary,#0b8fad);box-shadow:0 0 0 3px #1ba7c81a}
.drp-inputs span{color:#8394a4;font-size:12px}
.drp-inputs em{font-style:normal;font-size:12px;font-weight:600;color:#5c6f82}
.drp-err{color:#c0453f!important}
.drp-actions{display:flex;align-items:center;gap:10px}
.drp-actions button{min-height:34px;padding:7px 16px;border-radius:8px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
.drp-cancel{border:1px solid #dfe6ee;background:#fff;color:#51637a}
.drp-cancel:hover{background:#f2f6f9;border-color:#c6d6e0}
.drp-apply{border:1px solid var(--primary,#0b8fad);background:var(--primary,#0b8fad);color:#fff;box-shadow:0 3px 8px #0b8fad2e}
.drp-apply:hover{background:var(--primary-dark,#0a7286);background:var(--primary-dark,color-mix(in srgb, var(--brand) 80%, #10283f));border-color:var(--primary-dark,#0a7286);border-color:var(--primary-dark,color-mix(in srgb, var(--brand) 80%, #10283f))}
@media(max-width:820px){
  .drp-pop{position:fixed;left:12px;right:12px;top:auto;bottom:12px;max-height:82vh;overflow:auto}
  .drp-body{flex-direction:column}
  .drp-presets{width:auto;flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid #eef2f6}
  .drp-presets button{min-height:34px;padding:7px 11px}
  .drp-months{flex-direction:column;gap:18px}
  .drp-month{width:100%}
}
.field .drp{display:block;width:100%}
.field .drp .drp-trigger{width:100%;justify-content:space-between}
