/* BG184 / R1.476: reviewed funds view, scoped to its SPA route. */
.fd-page,.fd-date-layer{--number-weight:450;--font-title:1.0625rem;--font-section:.9375rem;--font-text:.8125rem;--font-control:.875rem;--font-note:.75rem;--font-money:.9375rem;--blue:#2d82f7;--ink:#253b57;--muted:#8a9ab0;--line:#e7edf5}
.fd-page,.fd-page *,.fd-date-layer,.fd-date-layer *{box-sizing:border-box}
.fd-page,.fd-date-layer{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;color:var(--ink);font-weight:400;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.fd-page button,.fd-date-layer button{font:inherit}
.fd-page button,.fd-date-layer button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.fd-page button,.fd-date-layer button{appearance:none;-webkit-appearance:none}
.fd-page button:focus-visible,.fd-date-layer button:focus-visible{outline:2px solid #87b5ff;outline-offset:2px}
.fd-page button:disabled,.fd-date-layer button:disabled{cursor:default}
.fd-page svg,.fd-date-layer svg{display:block;width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fd-page{display:flex;flex-direction:column;max-width:520px;margin-inline:auto;min-height:100vh;min-height:100dvh;background:#fff}
.fd-page .toolbar{flex:none;position:sticky;top:0;z-index:10;display:grid;grid-template-columns:2.5rem minmax(0,1fr) 2.5rem;align-items:center;min-height:calc(3.5rem + env(safe-area-inset-top,0px));padding:calc(.5rem + env(safe-area-inset-top,0px)) .75rem .5rem;background-color:#fff;background-image:linear-gradient(110deg,#277ef5,#2e83f7);background-position:0 100%;background-size:100% calc(100% - env(safe-area-inset-top,0px));background-repeat:no-repeat;color:#fff}
.fd-page .toolbar h1{font-size:var(--font-title);font-weight:400;line-height:1.5;text-align:center;margin:0;overflow-wrap:anywhere}
.fd-page .icon-button{display:grid;place-items:center;width:2.5rem;height:2.5rem;background:transparent;border:0;padding:0;color:inherit}
.fd-page .toolbar svg{width:1.375rem;height:1.375rem}
.fd-page .main{flex:1 0 auto;display:flex;flex-direction:column;padding:0 1rem calc(.75rem + env(safe-area-inset-bottom,0px))}
.fd-page #filterSection,.fd-page .summary,.fd-page .records-heading,.fd-page .pagination{flex:none}
.fd-page #filterSection{padding-top:.625rem}
.fd-page .filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.625rem}
.fd-page .filter{display:grid;gap:.25rem;min-width:0}
.fd-page .field-label{font-size:var(--font-text);line-height:1.5;color:var(--muted)}
.fd-page .sheet,.fd-page .filter-menu{scrollbar-width:none;-ms-overflow-style:none}
html[data-bg-funds]::-webkit-scrollbar,html[data-bg-funds] body::-webkit-scrollbar,.fd-page .sheet::-webkit-scrollbar,.fd-page .filter-menu::-webkit-scrollbar{display:none;width:0;height:0}
.fd-page .filter-anchor{position:relative;min-width:0}
.fd-page .filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-width:0;min-height:2.375rem;padding:.375rem .75rem;background:#fff;color:var(--ink);border:1px solid #dce6f4;border-radius:.5rem;font-size:var(--font-control);font-weight:400;line-height:1.4;text-align:start;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent}
.fd-page .filter-value{display:flex;align-items:center;gap:.375rem;min-width:0;overflow-wrap:anywhere}
.fd-page .currency-code{font-family:Arial,sans-serif;direction:ltr;unicode-bidi:isolate;white-space:nowrap}
.fd-page .filter-chevron{flex:none;color:#8893a2;width:.875rem;height:.875rem}
.fd-page .filter-trigger:focus,.fd-page .filter-trigger:active{outline:none;box-shadow:none;background:#fff}
.fd-page .filter-menu{position:absolute;top:calc(100% + .4375rem);inset-inline-start:0;z-index:20;width:100%;min-width:0;margin:0;padding:.3125rem;border:1px solid #e8ecf2;border-radius:.75rem;background:#fff;box-shadow:0 .375rem 1.25rem rgba(35,52,78,.1);max-height:16.375rem;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.fd-page .filter-option{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-width:0;min-height:2.625rem;padding:.5625rem .625rem;border:0;border-radius:.5rem;outline:none;background:#fff;color:#17202d;text-align:start;font-size:var(--font-text);font-weight:400;line-height:1.375rem;-webkit-tap-highlight-color:transparent}
.fd-page .filter-option[aria-selected="true"]{background:#f1f6ff;color:#277ef5}
.fd-page .filter-option:focus,.fd-page .filter-option:active{outline:none;box-shadow:none}
.fd-page .filter-option-label{display:flex;align-items:center;gap:.375rem;min-width:0;overflow-wrap:anywhere}
.fd-page .filter-check{flex:none;width:.875rem;font-size:.8125rem;text-align:center;color:#277ef5}
.fd-page .bg-currency-flag{display:block;width:1.125rem;height:1.125rem;flex:none;fill:none;stroke:none;stroke-width:0}
.fd-page .filter-anchor.is-keyboard .filter-trigger:focus-visible{outline:2px solid #397df8;outline-offset:2px}
.fd-page .filter-menu.is-keyboard .filter-option:focus-visible{background:#f1f6ff;outline:2px solid #397df8;outline-offset:-2px}
@media(hover:hover) and (pointer:fine){.fd-page .filter-option:hover{background:#f1f6ff}}
.fd-page .date-button{margin-top:.5rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-width:0;min-height:2.375rem;padding:.375rem .75rem;border:1px solid #dce6f4;border-radius:.5rem;background:#fff;color:var(--ink);font-size:var(--font-control);font-weight:400;line-height:1.4;text-align:start;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent}
.fd-page .date-button>svg{color:#8893a2;flex:none;width:1rem;height:1rem}
.fd-page .date-value{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;min-width:0;flex:1;font-weight:var(--number-weight)}
.fd-page .date-button .chevron{width:.875rem;height:.875rem;flex:none}
.fd-page .presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.375rem;margin-top:.375rem}
.fd-page .preset{min-width:0;min-height:1.875rem;padding:.25rem .125rem;border:1px solid transparent;background:#fff;color:#8492a7;border-radius:.4375rem;font-size:var(--font-text);font-weight:400;line-height:1.4;overflow-wrap:anywhere}
.fd-page .preset[aria-pressed="true"]{border-color:#deebff;background:#f0f6ff;color:var(--blue)}
.fd-page .summary{margin-top:.625rem;border:1px solid #e1eafa;border-radius:.8125rem;background:linear-gradient(115deg,#f3f7ff,#fbfdff);overflow:hidden}
.fd-page .summary-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:.625rem 0}
.fd-page .summary-cell{min-width:0;text-align:center;padding:0 .5rem}
.fd-page .summary-cell+.summary-cell{border-inline-start:1px solid #dae5f7}
.fd-page .summary-label{display:block;color:#8395af;font-size:var(--font-text);line-height:1.5}
.fd-page .summary-amount{display:block;margin-top:.25rem;font-size:var(--font-money);line-height:1.4;font-weight:var(--number-weight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.fd-page .records-heading{scroll-margin-top:4.25rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 0 .375rem}
.fd-page .records-heading h2{margin:0;font-size:var(--font-section);font-weight:400;line-height:1.5}
.fd-page .record-count{font-size:var(--font-note);color:#94a2b5}
.fd-page .record-list{display:block;flex:1 0 auto}
.fd-page .record{display:block;width:100%;min-height:3.5rem;margin:0;padding:.5rem .125rem;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:#fff;color:var(--ink);text-align:start}
.fd-page .record-top{display:grid;grid-template-columns:2.125rem minmax(0,1fr) auto;gap:.625rem;align-items:center}
.fd-page .record-icon{width:2.125rem;height:2.125rem;display:grid;place-items:center;border-radius:.625rem;background:#f1f8f5;color:#28a67e}
.fd-page .record-icon[data-money-sign="-"]{background:#fff5f6;color:#de7180}
.fd-page .record-icon[data-money-sign=""]{background:#eff5ff;color:#6c9ddd}
.fd-page .record-icon svg{width:1.125rem;height:1.125rem}
.fd-page .record-title{display:block;min-width:0;overflow-wrap:anywhere;font-size:var(--font-text);font-weight:400;line-height:1.5}
.fd-page .record-time{display:block;margin-top:.125rem;color:#9ba9ba;font-size:var(--font-note);line-height:1.5;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;text-align:start;font-weight:var(--number-weight)}
.fd-page .record-end{display:flex;align-items:center;gap:.4375rem;min-width:0}
.fd-page .record-open{width:.6875rem;height:.6875rem;flex:none;color:#bdc9d9}
.fd-page .record-amount{max-width:11rem;font-weight:var(--number-weight);font-size:var(--font-money);line-height:1.5;direction:ltr;unicode-bidi:isolate;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.fd-page .pagination{display:flex;justify-content:center;align-items:center;gap:1.1875rem;padding:.75rem 0 .125rem;font-size:var(--font-text);color:#8d9db3}
.fd-page .page-button{border:0;background:none;color:var(--blue);min-height:2rem;padding:.25rem .375rem;font-size:var(--font-text);max-width:35%;overflow-wrap:anywhere}
.fd-page .page-button:disabled{color:#c2cbd8}
.fd-page .page-indicator{white-space:nowrap;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;font-weight:var(--number-weight)}
.fd-page .empty{display:grid;justify-items:center;gap:.75rem;text-align:center;padding:2rem 1rem 2.25rem}
.fd-page .empty svg{width:3.5rem;height:3.5rem;color:#b2c9e9;stroke-width:1.2}
.fd-page .empty h3{margin:0;font-size:var(--font-section);font-weight:400;color:#829dc0}
.fd-page .sheet{position:fixed;inset:auto 0 0;width:100%;max-width:520px;max-height:61.6vh;max-height:61.6dvh;margin:0 auto;padding:0 1.25rem calc(.875rem + env(safe-area-inset-bottom,0px));border:0;border-radius:1rem 1rem 0 0;color:var(--ink);background:#fff;overflow:auto;overscroll-behavior:contain}
.fd-page .sheet::backdrop{background:rgba(20,37,61,.3)}
.fd-page .sheet-header{display:grid;grid-template-columns:2rem minmax(0,1fr) 2rem;align-items:center;gap:.5rem;min-height:2.875rem;padding-top:0}
.fd-page .sheet-header h2{font-size:var(--font-title);font-weight:400;line-height:1.5;text-align:center;margin:0;overflow-wrap:anywhere}
.fd-page .sheet-header h2:focus,.fd-page .sheet-close:focus{outline:none}
.fd-page .sheet-close{border:0;border-radius:.375rem;padding:.375rem;width:2rem;height:2rem;background:transparent;color:#8799b0}
.fd-page .sheet-close:focus-visible,.fd-page .sheet-close:active{background:#e8eef5;color:#334e6b}
.fd-page .sheet-close svg{width:1.125rem;height:1.125rem}
.fd-page .sheet-summary{padding:.125rem 0 .4375rem;text-align:center;border-bottom:1px solid var(--line)}
.fd-page .sheet-kind{display:block;color:#93a1b5;font-size:var(--font-text);line-height:1.5}
.fd-page .sheet-money{display:block;font-size:var(--font-money);line-height:1.5;font-weight:var(--number-weight);direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.fd-page .detail-fields{margin:.25rem 0 0}
.fd-page .detail-row{display:grid;grid-template-columns:minmax(5.75rem,35%) minmax(0,1fr);gap:.75rem;align-items:baseline;padding:.25rem 0;border-bottom:1px solid #f0f3f8;font-size:var(--font-text);line-height:1.6}
.fd-page .detail-row dt{color:#99a8ba}
.fd-page .detail-row dd{margin:0;text-align:end;overflow-wrap:anywhere;color:#526984}
.fd-page .detail-row dd.mono{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;font-weight:var(--number-weight)}
.fd-page .detail-row:last-child{border-bottom:0}
.fd-page .number{font-weight:var(--number-weight)}
.fd-page .sheet-done{display:block;width:100%;min-height:2.25rem;margin-top:.625rem;padding:.375rem .75rem;border:0;border-radius:.5rem;background:var(--blue);color:#fff;font-size:var(--font-control);font-weight:400;line-height:1.5}
html[dir="rtl"] .fd-page .back-arrow,html[dir="rtl"] .fd-page .record-open{transform:scaleX(-1)}
@media(min-width:768px){.fd-page{box-shadow:0 0 0 1px #eff3f9}
.fd-page .main{padding-inline:1.25rem}
.fd-page .sheet{border-radius:1rem 1rem 0 0}}
@media(prefers-reduced-motion:reduce){.fd-page,.fd-page *,.fd-date-layer,.fd-date-layer *{scroll-behavior:auto!important}}
.fd-page .detail-row dd.balance-money{font-size:var(--font-money);font-weight:var(--number-weight)}
.fd-date-layer{color:#252b33;position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;width:100%;max-width:520px;margin-inline:auto;background:rgba(20,37,61,.28)}
.fd-date-sheet{width:100%;max-height:90vh;max-height:90dvh;overflow-y:auto;overscroll-behavior-y:contain;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));border-radius:1rem 1rem 0 0;background:#fff}
.fd-date-heading{position:relative;min-height:2.25rem}
.fd-month-navigation{display:flex;align-items:center;justify-content:center;gap:0.5rem;margin-inline:2rem}
.fd-date-heading h2{min-width:7rem;margin:0;text-align:center;font-size:0.875rem;font-weight:400;line-height:1.5;font-variant-numeric:tabular-nums}
.fd-date-layer .fd-month-step{display:grid;place-items:center;flex:none;width:2.25rem;height:2.25rem;padding:0;border:0;background:transparent;color:#65758c}
.fd-month-step svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.fd-date-layer .fd-month-step:disabled{opacity:.3;cursor:default}
.fd-date-layer .fd-date-close{position:absolute;inset-inline-end:0;top:0.125rem;display:grid;place-items:center;width:2rem;height:2rem;padding:0;border:0;background:transparent;color:#8592a4}
.fd-date-close svg{width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.fd-calendar-grid{margin-top:0.5rem;font-variant-numeric:tabular-nums}
.fd-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.fd-calendar-week>div{min-width:0}
.fd-calendar-weekdays{align-items:center;min-height:2rem;margin-bottom:0.25rem;color:#929ba7;font-size:0.8125rem}
.fd-date-layer .fd-calendar-day{display:grid;place-items:center;width:100%;min-width:0;height:2.475rem;padding:0;border:0;background:transparent;color:#252b33;font-size:0.875rem;font-weight:400}
.fd-calendar-day span{position:relative;display:grid;place-items:center;width:2.125rem;height:2.125rem;border-radius:50%}
.fd-date-layer .fd-calendar-day.is-outside{color:#bbc2cc}
.fd-calendar-day[aria-current="date"] span::after{content:"";position:absolute;bottom:0.125rem;left:calc(50% - 0.125rem);width:0.25rem;height:0.25rem;border-radius:50%;background:#397ef7}
.fd-calendar-day.is-start span,.fd-calendar-day.is-end span{background:#397ef7;color:#fff}
.fd-calendar-day.is-start[aria-current="date"] span::after,.fd-calendar-day.is-end[aria-current="date"] span::after{background:#fff}
.fd-date-layer .fd-calendar-day:disabled{visibility:hidden;cursor:default}
.fd-date-actions{margin-top:0.75rem;padding-top:1rem;border-top:1px solid #edf0f4}
.fd-date-layer .fd-date-apply{width:100%;height:2.625rem;padding:0 1rem;border:0;border-radius:1.5rem;background:#397ef7;color:#fff;font-size:0.875rem;font-weight:400}
.fd-range-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.5rem;margin-top:0.625rem}
.fd-date-layer .fd-range-endpoint{display:grid;gap:0.125rem;min-width:0;padding:0.375rem 0.5rem;border:1px solid #e0e7ef;border-radius:0.5rem;background:#fff;color:#65758c;font-size:0.75rem;font-weight:400;text-align:center}
.fd-date-layer .fd-range-endpoint[aria-pressed="true"]{border-color:#397ef7;background:#f0f5ff;color:#397ef7}
.fd-range-value{font-size:0.875rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.fd-date-layer .fd-calendar-day.is-in-range{background:#f0f5ff}
.fd-date-layer .fd-calendar-day.is-start{border-radius:1.5rem 0 0 1.5rem}
.fd-date-layer .fd-calendar-day.is-end{border-radius:0 1.5rem 1.5rem 0}
.fd-date-layer .fd-calendar-day.is-start.is-end{border-radius:1.5rem}
.fd-date-error{margin:0.625rem 0 0;color:#d95363;font-size:0.8125rem;line-height:1.5}
.fd-date-sheet{scrollbar-width:none;-ms-overflow-style:none}
.fd-date-sheet::-webkit-scrollbar{display:none}
.fd-range-value,.fd-date-layer .fd-calendar-day,.fd-date-heading h2{font-weight:var(--number-weight)}
html[dir="rtl"] .fd-month-step svg{transform:scaleX(-1)}
html[dir="rtl"] .fd-calendar-day.is-start{border-radius:0 1.5rem 1.5rem 0}
html[dir="rtl"] .fd-calendar-day.is-end{border-radius:1.5rem 0 0 1.5rem}
html[dir="rtl"] .fd-calendar-day.is-start.is-end{border-radius:1.5rem}
.fd-page .date-button:focus,.fd-page .date-button:active{outline:none;box-shadow:none;background:#fff}
.fd-page .date-button.is-keyboard:focus-visible{outline:2px solid #397df8;outline-offset:2px}
.fd-page a{color:inherit;text-decoration:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.fd-page .toolbar h1{grid-column:2}
.fd-page .data-message{padding:1.75rem .5rem;text-align:center;color:var(--muted);font-size:var(--font-text);line-height:1.6}
.fd-page .data-message p{margin:0 0 .5rem}
.fd-page .retry-button{padding:.375rem .875rem;border:1px solid #dce6f4;border-radius:.5rem;background:#fff;color:var(--blue);font-size:var(--font-text)}
.fd-page .data-stale{margin:.25rem 0;color:#b07636;font-size:var(--font-note);line-height:1.5}
.fd-page .pagination[hidden]{display:none}
html[data-bg-funds],html[data-bg-funds] body{scrollbar-width:none;-ms-overflow-style:none}
html[data-bg-funds]::-webkit-scrollbar,html[data-bg-funds] body::-webkit-scrollbar{display:none;width:0;height:0}

