:root{--bg:#eef1f7;--panel:#ffffff;--panel-2:#f3f6fc;--text:#1a2438;--muted:#5d6b88;--accent:#2563eb;--border:#dde4f0;--good:#178a5f;--warn:#b07310;--field:#ffffff;--field-border:#c4d0e4;--ring:rgba(37,99,235,0.22);--picker-filter:invert(0);--shadow:0 1px 2px rgba(16,24,40,0.05),0 4px 12px rgba(16,24,40,0.06);--surface:#ffffff;--surface-muted:#f4f5f7;--surface-group:#f8f9fb;--border-subtle:#e5e7eb;--surface-primary:color-mix(in srgb,var(--accent) 5%,#ffffff);--border-primary:color-mix(in srgb,var(--accent) 22%,var(--border-subtle));--semantic-danger:#b91c1c;--accent-draw:var(--good);--accent-extension:#d97706;--accent-payoff:#0369a1;--site-header-offset:66px;--loan-header-sticky-height:0px;--loan-tabbar-offset:52px;--loan-sticky-scroll-gap:12px;--loan-sticky-scroll-offset:calc(var(--site-header-offset) + var(--loan-header-sticky-height, 0px) + var(--loan-tabbar-offset) + var(--loan-sticky-scroll-gap));--table-head-bg:color-mix(in srgb,var(--panel-2) 86%,var(--accent) 14%);--table-head-border:color-mix(in srgb,var(--border) 50%,var(--text) 50%)}[data-theme=dark]{--bg:#0b1020;--panel:#141b2e;--panel-2:#1b2540;--text:#e7ecf5;--muted:#93a0bd;--accent:#5b8def;--border:#283250;--good:#3fb27f;--warn:#e0a23b;--field:#223a5e;--field-border:#46568a;--ring:rgba(91,141,239,0.3);--picker-filter:invert(1);--shadow:none;--surface:var(--panel);--surface-muted:color-mix(in srgb,var(--panel-2) 65%,var(--panel));--surface-group:color-mix(in srgb,var(--panel-2) 45%,var(--panel));--border-subtle:var(--border);--surface-primary:color-mix(in srgb,var(--accent) 8%,var(--panel));--border-primary:color-mix(in srgb,var(--accent) 28%,var(--border));--semantic-danger:#f87171;--accent-draw:var(--good);--accent-extension:var(--warn);--accent-payoff:#38bdf8;--table-head-bg:color-mix(in srgb,var(--panel-2) 82%,var(--accent) 18%);--table-head-border:color-mix(in srgb,var(--border) 45%,var(--text) 55%)}[data-theme=blue]{--bg:#e7eefb;--panel:#ffffff;--panel-2:#d6e3fa;--text:#0b2545;--muted:#4a5b7a;--accent:#1d4ed8;--border:#c2d4f2;--good:#15803d;--warn:#c2620b;--field:#ffffff;--field-border:#aac3ec;--ring:rgba(29,78,216,0.28);--picker-filter:invert(0);--shadow:0 1px 2px rgba(11,37,69,0.06),0 8px 20px rgba(29,78,216,0.14)}[data-theme=warm]{--bg:#faf6f0;--panel:#ffffff;--panel-2:#f3ece1;--text:#2e2620;--muted:#7d6f5f;--accent:#e07a5f;--border:#e9ddcd;--good:#2f6d5b;--warn:#c4762a;--field:#ffffff;--field-border:#ddcdb8;--ring:rgba(224,122,95,0.25);--picker-filter:invert(0);--shadow:0 1px 2px rgba(46,38,32,0.05),0 6px 16px rgba(224,122,95,0.1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1280px;margin:0 auto;padding:20px 20px 64px}.container:has(>.loan-detail-main){max-width:1520px;padding-left:24px;padding-right:24px}.container:has(>.dashboard-page){padding-top:10px}.container:has(>.loans-page){padding-top:12px;padding-bottom:88px}html:has(.loans-page){scroll-padding-top:calc(var(--site-header-offset) + 12px)}.loan-detail-main{min-width:0}html:has(.loan-detail-main){scroll-padding-top:var(--loan-sticky-scroll-offset)}.loan-detail-main .card{min-width:0;max-width:100%}.loan-detail-main .card[id],.loan-detail-main .loan-collapsible,.loan-detail-main .loan-overview-section,.loan-detail-main .loan-overview-section-title{scroll-margin-top:var(--loan-sticky-scroll-offset)}.loan-detail-skeleton{display:grid;grid-gap:16px;gap:16px;padding:20px}.loan-detail-skeleton-header,.loan-detail-skeleton-panel,.loan-detail-skeleton-tabs{border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--border) 55%,transparent) 0,color-mix(in srgb,var(--border) 25%,transparent) 50%,color-mix(in srgb,var(--border) 55%,transparent) 100%);background-size:200% 100%;animation:loan-detail-shimmer 1.2s ease-in-out infinite}.loan-detail-skeleton-header{height:88px}.loan-detail-skeleton-tabs{height:40px;max-width:520px}.loan-detail-skeleton-panel{height:220px}.loan-detail-skeleton-panel--short{height:120px}@keyframes loan-detail-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;margin-bottom:8px;padding:8px 0;background:var(--bg);border-bottom:1px solid var(--border);box-shadow:0 2px 8px color-mix(in srgb,var(--text) 6%,transparent);--header-logo-height:50px}.site-header-bar{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;min-height:var(--header-logo-height);max-width:1280px;margin:0 auto;padding:0 20px;flex-wrap:wrap}.site-header-start{gap:8px 18px;flex:1 1 560px;overflow:visible}.site-header-end,.site-header-start{display:flex;align-items:center;min-width:0}.site-header-end{justify-content:flex-end;gap:8px 10px;flex:1 1 320px;flex-wrap:wrap}.header-environment{margin:0;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.03em;white-space:normal;max-width:100%;flex:0 1 auto;min-width:0}.environment-banner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 8px}.environment-banner-mode{text-transform:uppercase;flex-shrink:0}.environment-banner-sep{font-weight:600;opacity:.55;flex-shrink:0}.environment-banner-date{font-weight:600;text-transform:none;letter-spacing:normal}.bd-nav-inline{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;min-width:0;max-width:100%}.bd-nav-mini{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:1px solid color-mix(in srgb,var(--warn) 50%,var(--border));background:color-mix(in srgb,var(--warn) 10%,#fff);color:inherit;font:inherit;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;padding:3px 7px;border-radius:6px}.bd-nav-mini:hover:not(:disabled){background:color-mix(in srgb,var(--warn) 22%,#fff)}.bd-nav-mini:disabled{opacity:.45;cursor:not-allowed}.bd-nav-error{font-weight:600;color:var(--warn);text-transform:none;letter-spacing:normal}[data-theme=dark] .bd-nav-mini{background:color-mix(in srgb,var(--warn) 20%,var(--panel));border-color:color-mix(in srgb,var(--warn) 45%,var(--border))}.environment-banner-test .bd-nav-mini{border-color:color-mix(in srgb,var(--good) 45%,var(--border));background:color-mix(in srgb,var(--good) 10%,#fff)}.environment-banner-test .bd-nav-mini:hover:not(:disabled){background:color-mix(in srgb,var(--good) 20%,#fff)}[data-theme=dark] .environment-banner-test .bd-nav-mini{background:color-mix(in srgb,var(--good) 18%,var(--panel));border-color:color-mix(in srgb,var(--good) 40%,var(--border))}.environment-banner-test{background:color-mix(in srgb,var(--good) 12%,#f0fdf4);border:1px solid color-mix(in srgb,var(--good) 40%,var(--border));color:#16a34a}.environment-banner-test .environment-banner-date{color:#22c55e}.environment-banner-production{background:color-mix(in srgb,var(--good) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--good) 35%,var(--border));color:var(--text)}.environment-banner-production .environment-banner-mode{color:var(--good)}[data-theme=dark] .environment-banner-test{background:color-mix(in srgb,var(--good) 18%,var(--panel));color:#86efac;border-color:color-mix(in srgb,var(--good) 40%,var(--border))}[data-theme=dark] .environment-banner-test .environment-banner-date{color:#4ade80}.business-date-banner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 16px;margin:0 0 16px;padding:10px 16px;border-radius:8px;background:color-mix(in srgb,var(--warn) 18%,#fff7ed);border:1px solid color-mix(in srgb,var(--warn) 55%,var(--border));color:#9a3412;font-size:14px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.business-date-banner-sub{font-size:12px;font-weight:600;text-transform:none;letter-spacing:normal;color:#c2410c;opacity:.9}[data-theme=dark] .business-date-banner{background:color-mix(in srgb,var(--warn) 22%,var(--panel));color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,var(--border))}[data-theme=dark] .business-date-banner-sub{color:var(--warn)}.app-mode-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em}.app-mode-test{color:#16a34a}.app-mode-production,.app-mode-test{background:color-mix(in srgb,var(--good) 14%,var(--panel));border:1px solid color-mix(in srgb,var(--good) 35%,var(--border))}.app-mode-production{color:var(--good)}.header-right-divider{width:1px;height:18px;background:var(--border);flex-shrink:0}.user-account-menu{position:relative}.user-account-trigger{display:inline-flex;align-items:center;gap:5px;margin:0;padding:5px 8px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;line-height:1.2}.user-account-trigger:hover{border-color:var(--accent);background:var(--panel-2)}.user-account-chevron{font-size:11px;opacity:.55;line-height:1}.user-account-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:200px;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 12%,transparent)}.user-account-dropdown-header{display:flex;flex-direction:column;gap:2px;padding:8px 10px 6px;border-bottom:1px solid var(--border);margin-bottom:4px}.user-account-dropdown-name{font-size:13px;font-weight:600;color:var(--text)}.user-account-dropdown-email{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-account-dropdown-role{display:block;font-size:11px;margin-top:4px}.user-account-dropdown form{margin:0}.user-account-dropdown-item{display:block;width:100%;margin:0;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:var(--text);font-size:13px;font-weight:500;text-align:left;cursor:pointer;text-decoration:none;box-sizing:border-box}.user-account-dropdown-item:hover{background:var(--panel-2);color:var(--accent)}.login-wrap{display:flex;justify-content:center;align-items:flex-start;padding-top:6vh;min-height:calc(100vh - 4rem)}.login-card{width:100%;max-width:380px}.login-version{position:fixed;left:14px;bottom:12px;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;line-height:1.2;color:var(--muted);opacity:.85;z-index:1}.topnav{position:relative;display:flex;align-items:center;flex:1 1 auto;min-width:0}.topnav-menu-btn{display:none;align-items:center;justify-content:center;margin:0;padding:6px 8px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--text);font-size:16px;line-height:1;cursor:pointer;flex-shrink:0}.topnav-menu-btn:hover{border-color:var(--accent);background:var(--panel-2)}.topnav-menu-icon{display:block;width:1.1em;text-align:center}.topnav-links{display:flex;align-items:center;gap:5px;flex-wrap:nowrap;min-width:0}@media (max-width:1024px){.nav-dropdown-toggle,.topnav-link{padding:5px 9px;font-size:12px}}@media (max-width:1180px){:root{--site-header-offset:112px}.site-header-bar{row-gap:8px}.site-header-start{width:100%;justify-content:space-between;overflow:visible}.site-header-end{width:100%;justify-content:center;flex-wrap:wrap;gap:6px 10px}.header-right-divider{display:none}.header-environment{text-align:center}.topnav-menu-btn{display:inline-flex}.topnav-links{display:none;position:absolute;top:calc(100% + 6px);right:0;z-index:50;flex-direction:column;align-items:stretch;gap:2px;min-width:200px;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 12%,transparent)}.topnav.is-open .topnav-links{display:flex}.topnav-links .nav-dropdown-toggle,.topnav-links .topnav-link{width:100%;justify-content:space-between;text-align:left}.topnav-links .nav-dropdown{width:100%}.topnav-links .nav-dropdown-menu{position:static;box-shadow:none;border:none;padding:0 0 0 10px;background:transparent}}.brand{display:flex;align-items:center;flex-shrink:0;color:var(--text);width:-moz-fit-content;width:fit-content}.brand,.brand:hover{text-decoration:none}.brand:hover{opacity:.92}.brand-logo-frame{width:clamp(148px,24vw,184px);overflow:hidden;line-height:0}.brand-logo,.brand-logo-frame{display:block;height:var(--header-logo-height)}.brand-logo{width:auto;min-width:148px;max-width:192px;object-fit:contain;object-position:left center}.topnav-link{color:var(--muted);font-size:13px;font-weight:500;padding:5px 12px;border-radius:7px}.topnav-link:hover{color:var(--text);background:var(--panel);text-decoration:none}.topnav-link.active{color:var(--text);background:var(--panel-2)}.loans-page .back{margin:0 0 6px}.loans-page-head{margin:0 0 12px}.loans-page-head h2{margin:0;font-size:1.35rem;line-height:1.2}.loans-toolbar{display:flex;align-items:center;justify-content:flex-start;gap:10px 12px;flex-wrap:wrap;margin-bottom:10px}.loans-toolbar .view-toggle{margin-bottom:0}.loan-search{flex:1 1 280px;max-width:420px;padding:9px 14px;font-size:14px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--text)}.loan-search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.loan-search-form{flex:1 1 280px;max-width:420px}.loan-search-form .loan-search{width:100%;max-width:none;flex:none}.loans-date-toggle,.loans-filter-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.loans-date-toggle input,.loans-filter-toggle input{width:16px;height:16px;margin:0;cursor:pointer}.loans-filter-toggle:has(input:disabled){opacity:.6;cursor:progress}.loans-clear-filters{font-size:13px;font-weight:600;color:var(--accent);white-space:nowrap;text-decoration:none}.loans-clear-filters:hover{text-decoration:underline}.loans-toolbar-divider{flex:0 0 auto;align-self:stretch;width:1px;min-height:1.25em;margin:0 2px;background:var(--border)}.loans-list-meta{margin:0 0 12px;font-size:13px}.loans-filter-chips{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 10px}.loans-filter-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--text);font-size:12px;font-weight:600;text-decoration:none;line-height:1.2}.loans-filter-chip:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.loans-menu{position:relative}.loans-menu-summary{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.loans-menu-summary::-webkit-details-marker{display:none}.loans-menu-summary:after{content:"▾";margin-left:8px;font-size:10px;color:var(--muted)}.loans-menu[open] .loans-menu-summary{border-color:var(--accent)}.loans-menu-end .loans-menu-panel{left:auto;right:0}.loans-menu-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:8;display:flex;flex-direction:column;gap:10px;min-width:220px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:var(--shadow)}.loans-pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 10px}.grid+.loans-pagination-bar,.loans-table-scroll+.loans-pagination-bar{margin-top:14px;margin-bottom:0}.loans-pagination-meta{margin:0;font-size:13px;white-space:nowrap}.loans-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:0}.loans-page-size{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--muted);white-space:nowrap}.loans-page-size select{min-height:34px;padding:4px 8px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--text);font-family:inherit;font-size:13px;font-weight:600}.loans-page-numbers{display:inline-flex;align-items:center;gap:4px;margin:0;padding:0;list-style:none}.loans-page-nav,.loans-page-num{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--text);font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;line-height:1;white-space:nowrap}.loans-page-num{min-width:34px;padding:6px 10px}.loans-page-nav:hover:not(.disabled),.loans-page-num:hover:not(.active){border-color:var(--accent);color:var(--accent)}.loans-page-num.active{background:var(--accent);border-color:var(--accent);color:#fff;cursor:default}.loans-page-nav.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.loans-page-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:24px;color:var(--muted);font-weight:700}.view-toggle{display:inline-flex;gap:2px;padding:3px;margin-bottom:16px;background:var(--panel);border:1px solid var(--border);border-radius:9px}.view-btn{border:none;background:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;color:var(--muted);padding:6px 14px;border-radius:7px}a.view-btn{color:var(--muted);text-decoration:none;display:inline-block}a.view-btn:hover{text-decoration:none}.view-btn:hover,a.view-btn:hover{color:var(--text)}.view-btn.active,a.view-btn.active{color:var(--text);background:var(--panel-2)}.h-scroll-cue,.loans-table-scroll{position:relative;margin-bottom:16px}.loans-table-scroll>.loans-table-wrap.card{margin-bottom:0;max-height:none;overflow:visible}.h-scroll-cue{margin-bottom:0}.h-scroll-cue:after,.h-scroll-cue:before,.loans-table-scroll:after,.loans-table-scroll:before{content:"";position:absolute;top:1px;bottom:1px;width:28px;pointer-events:none;z-index:2;opacity:0;transition:opacity .15s ease;border-radius:0}.h-scroll-cue:before,.loans-table-scroll:before{left:1px;border-radius:11px 0 0 11px;background:linear-gradient(to right,var(--panel) 35%,transparent)}.h-scroll-cue:after,.loans-table-scroll:after{right:1px;border-radius:0 11px 11px 0;background:linear-gradient(to left,var(--panel) 35%,transparent)}.h-scroll-cue.can-scroll-left:before,.h-scroll-cue.can-scroll-right:after,.loans-table-scroll.can-scroll-left:before,.loans-table-scroll.can-scroll-right:after{opacity:1}.loans-table-wrap{overflow:visible}.h-scroll-cue-viewport{overflow-x:auto;-webkit-overflow-scrolling:touch}.loans-table{width:100%;min-width:960px;border-collapse:collapse}.loans-table td,.loans-table th{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.loans-table thead th{font-weight:700;background:var(--table-head-bg);border-bottom:2px solid var(--table-head-border);padding-top:11px;padding-bottom:11px}.loans-table tbody tr:last-child td{border-bottom:none}.loans-table .num{text-align:right;white-space:nowrap}.loans-table-row.is-clickable:hover,.loans-table-row:hover{background:var(--panel-2)}.loans-table-row.is-clickable{cursor:pointer}.loans-table-row.is-selected{background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.loans-table .select-col{width:40px;text-align:center}.loans-table.loans-table-with-dates{min-width:1280px}.loans-table .loans-sort-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:2px}.loans-table .loans-sort-link:hover{color:var(--accent);text-decoration:none}.loans-table .loans-sort-arrow{font-weight:700;color:var(--accent)}.loans-table .loans-date-cell{white-space:nowrap}.loans-table .select-col input{width:16px;height:16px;cursor:pointer}.loans-bulk-bar{position:-webkit-sticky;position:sticky;bottom:16px;z-index:6;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,var(--accent) 8%);box-shadow:var(--shadow)}.loans-bulk-bar-count{margin:0;font-size:13px;font-weight:700}.loans-bulk-clear{margin-left:auto;border:none;background:none;color:var(--accent);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.loans-bulk-clear:hover{text-decoration:underline}.loan-card-wrap{position:relative}.loan-card-wrap .loan-select{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex}.loan-card-wrap .loan-select input{width:18px;height:18px;cursor:pointer}.loan-card-wrap .loan-card{display:block;color:inherit;text-decoration:none}.nav-dropdown{position:relative;display:inline-flex}.nav-dropdown-toggle{display:inline-flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;font-family:inherit}.nav-caret{font-size:10px;line-height:1}.nav-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:120;min-width:170px;display:flex;flex-direction:column;gap:2px;padding:6px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.18)}.nav-dropdown-item{color:var(--muted);font-size:14px;font-weight:500;padding:8px 10px;border-radius:8px;white-space:nowrap}.nav-dropdown-item:hover{text-decoration:none}.nav-dropdown-item.active,.nav-dropdown-item:hover{color:var(--text);background:var(--panel-2)}.brand h1{margin:0;white-space:nowrap;font-weight:800;letter-spacing:1.5px}.brand h1,.brand span{font-size:24px;text-transform:uppercase}.brand span{font-weight:700;letter-spacing:2.5px;color:transparent;-webkit-text-stroke:1px var(--accent);text-stroke:1px var(--accent)}.hub-actions{display:flex;gap:10px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px;margin:16px 0}.kpi-card{display:flex;flex-direction:column;gap:8px;color:var(--text);margin-bottom:0;transition:border-color .15s ease}a.kpi-card:hover{border-color:var(--accent);text-decoration:none}.kpi-label{color:var(--muted);font-size:12px;line-height:1.35;min-height:2.7em;text-transform:uppercase;letter-spacing:.04em;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.kpi-value{margin-top:auto;font-size:26px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15}.money-frac{font-size:.72em;font-weight:600;opacity:.72}.kpi-value .money-frac{font-size:.55em;font-weight:600;opacity:.68}.chart-row{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:14px;gap:14px}.chart-row>.loan-collapsible{margin-bottom:0}@media (max-width:760px){.chart-row{grid-template-columns:1fr}}.chart-card h3{font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.bars{display:flex;flex-direction:column;gap:12px}.bar-row{display:grid;grid-template-columns:92px 1fr auto;align-items:center;grid-gap:10px;gap:10px;font-size:13px}.bar-label{color:var(--muted)}.bar-track{background:var(--panel-2);border-radius:6px;height:14px;overflow:hidden}.bar-fill{height:100%;border-radius:6px;min-width:3px;transition:width .3s ease}.bar-value{color:var(--text);font-size:12px;white-space:nowrap}.portfolio{display:flex;align-items:center;gap:18px}.legend{display:flex;flex-direction:column;gap:12px;font-size:13px}.legend>div{display:flex;align-items:center;gap:8px}.legend .dot{width:12px;height:12px;border-radius:3px;border:1px solid transparent;display:inline-block}.legend-val{display:block;margin-left:auto;font-weight:600}.skeleton-card{display:flex;flex-direction:column;gap:12px}.skeleton-line{height:14px;border-radius:6px;background-color:color-mix(in srgb,var(--border) 65%,var(--panel-2));background-image:linear-gradient(90deg,transparent 25%,color-mix(in srgb,var(--panel) 70%,transparent) 50%,transparent 75%);background-size:200% 100%;background-repeat:no-repeat;animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton-line--head{height:20px;width:45%}.skeleton-line--sm{height:10px;width:60%}.skeleton-table{display:flex;flex-direction:column;gap:14px}.skeleton-table-row{display:grid;grid-template-columns:repeat(var(--skeleton-cols,4),1fr);grid-gap:16px;gap:16px;align-items:center}.skeleton-table-head .skeleton-line{opacity:.8}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton-line{animation:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.route-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:2000;pointer-events:none;opacity:0;transition:opacity .25s ease .1s}.route-progress.is-active{opacity:1;transition:opacity .1s ease}.route-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#ffffff));box-shadow:0 0 8px color-mix(in srgb,var(--accent) 60%,transparent);transition:width .2s ease}@media (prefers-reduced-motion:reduce){.route-progress-bar{transition:width .4s linear}}.inline-spinner{display:inline-block;border-radius:50%;border:2px solid color-mix(in srgb,currentColor 35%,transparent);border-top-color:currentcolor;animation:inline-spinner-spin .65s linear infinite;vertical-align:-2px}@keyframes inline-spinner-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.inline-spinner{animation-duration:1.4s}}.btn-busy{display:inline-flex;align-items:center;gap:8px}.loading-card-wrap{display:flex;align-items:center;justify-content:center;min-height:40vh;padding:24px}.loading-card{gap:12px;padding:16px 22px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);color:var(--text);font-size:14px;font-weight:500}.loading-card,.loading-dots{display:inline-flex;align-items:center}.loading-dots{gap:5px}.loading-dots span{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block;animation:loading-dot-bounce 1.1s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.15s}.loading-dots span:nth-child(3){animation-delay:.3s}@keyframes loading-dot-bounce{0%,70%,to{transform:translateY(0);opacity:.45}35%{transform:translateY(-6px);opacity:1}}@media (prefers-reduced-motion:reduce){.loading-dots span{animation:loading-dot-pulse 1.4s ease-in-out infinite}}@keyframes loading-dot-pulse{0%,to{opacity:.4}50%{opacity:1}}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:50vh;color:var(--muted)}.page-loading-spinner{width:34px;height:34px;border-radius:50%;border:3px solid color-mix(in srgb,var(--border) 70%,var(--panel-2));border-top-color:var(--accent);animation:page-loading-spin .7s linear infinite}.page-loading-text{font-size:14px}@keyframes page-loading-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.page-loading-spinner{animation-duration:1.6s}}.dashboard-page .dashboard-page-head{align-items:flex-start;margin-bottom:10px}.dashboard-page .dashboard-title{margin:0 0 2px;font-size:1.65rem}.dashboard-page .dashboard-subtitle{margin:0;font-size:14px}.dashboard-freshness{margin:6px 0 0;font-size:12px;line-height:1.4}.dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:10px}.dashboard-card,.dashboard-kpi-card{margin-bottom:0}.dashboard-card-title{margin:0 0 4px;font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.dashboard-card-sub{margin:0 0 14px;font-size:13px}.dashboard-two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-bottom:14px}@media (max-width:900px){.dashboard-two-col{grid-template-columns:1fr}}.dashboard-attention-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.dashboard-attention-groups{display:flex;flex-direction:column;gap:16px}.dashboard-attention-group-title{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.dashboard-attention-group--high-risk .dashboard-attention-group-title{color:var(--bad,#b2566b)}.dashboard-attention-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.dashboard-attention-item--critical{border-color:color-mix(in srgb,var(--bad,#b2566b) 35%,var(--border));background:color-mix(in srgb,var(--bad,#b2566b) 6%,var(--panel-2))}.dashboard-attention-item--high-risk{border-left:4px solid var(--bad,#b2566b);background:linear-gradient(90deg,color-mix(in srgb,var(--bad,#b2566b) 10%,var(--panel-2)) 0,var(--panel-2) 42%)}.dashboard-attention-item--critical .dashboard-attention-count,.dashboard-attention-item--high-risk .dashboard-attention-count{color:var(--bad,#b2566b);font-size:22px}.dashboard-attention-item--moderate{border-color:color-mix(in srgb,var(--warn,#e0a23b) 30%,var(--border))}.dashboard-attention-item--placeholder-disabled{flex-direction:column;align-items:stretch;gap:8px;border-style:dashed;opacity:.92}.dashboard-attention-placeholder-detail{margin:0;font-size:12px;line-height:1.45}.dashboard-attention-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.dashboard-attention-action{white-space:nowrap}.dashboard-attention-main{display:flex;align-items:center;gap:8px;min-width:0}.dashboard-attention-label{font-size:14px;font-weight:500;color:var(--text)}a.dashboard-attention-label:hover{color:var(--accent);text-decoration:none}.dashboard-placeholder-badge{font-size:11px;padding:2px 8px;border-radius:999px;border:1px dashed var(--border);white-space:nowrap}.dashboard-attention-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.dashboard-attention-count{font-size:20px;font-weight:700;line-height:1.1}.dashboard-attention-amount{font-size:12px}.dashboard-status-bars{margin-top:4px;display:flex;flex-direction:column;gap:14px}.dashboard-status-row{display:flex;flex-direction:column;gap:6px}.dashboard-status-row--empty .dashboard-status-line{opacity:.7}.dashboard-status-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:13px}.dashboard-status-name{font-weight:600;color:var(--text);min-width:72px}.dashboard-status-stats{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:4px;font-size:12px;text-align:right}.dashboard-status-sep{opacity:.55}.dashboard-status-track{height:10px}.dashboard-status-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.dashboard-status-meta{font-size:12px;white-space:nowrap}.dashboard-status-bar-row{grid-template-columns:1fr auto}.dashboard-status-out-pct{font-size:11px}.dashboard-portfolio-row .dashboard-card{min-height:100%}.dashboard-portfolio-compact{display:grid;grid-template-columns:auto 1fr;grid-gap:20px;gap:20px;align-items:start}@media (max-width:640px){.dashboard-portfolio-compact{grid-template-columns:1fr}}.dashboard-portfolio-mini{display:flex;align-items:center;gap:14px}.dashboard-portfolio-stats{display:flex;flex-direction:column;gap:10px}.dashboard-portfolio-stat{display:flex;flex-direction:column;gap:2px;font-size:13px}.dashboard-portfolio-stat strong{font-size:16px}.dashboard-stat-pct{font-size:11px}.dashboard-risk-summary{border-left:1px solid var(--border);padding-left:20px}@media (max-width:640px){.dashboard-risk-summary{border-left:none;padding-left:0;padding-top:12px;border-top:1px solid var(--border)}}.dashboard-risk-title{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.dashboard-risk-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.dashboard-risk-item{display:grid;grid-template-columns:10px 72px 1fr auto;align-items:center;grid-gap:8px;gap:8px;font-size:13px}.dashboard-risk-dot{width:8px;height:8px;border-radius:50%}.dashboard-risk-label{font-weight:500}.dashboard-risk-amount{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-card-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.dashboard-card-head-row .dashboard-card-sub{margin-bottom:0}.dashboard-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dashboard-toggle input{accent-color:var(--accent)}.dashboard-row-muted td{opacity:.65}.dashboard-payments-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.dashboard-summary-stat{display:flex;flex-direction:column;gap:4px;font-size:12px}.dashboard-summary-stat strong{font-size:18px}.dashboard-payment-groups{display:flex;flex-direction:column;gap:8px}.dashboard-payment-group{border:1px solid var(--border);border-radius:8px;overflow:hidden}.dashboard-payment-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 12px;background:var(--panel-2);border:none;text-align:left;color:var(--text);font:inherit}.dashboard-payment-group-head--expandable{cursor:pointer}.dashboard-payment-group-head--expandable:hover{background:var(--panel)}.dashboard-payment-group-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;min-width:0}.dashboard-payment-date{font-weight:600;font-size:13px}.dashboard-payment-borrower{font-size:13px}.dashboard-payment-count{font-size:12px}.dashboard-payment-total{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;display:flex;align-items:center;gap:6px}.dashboard-expand-icon{color:var(--muted);font-size:11px}.dashboard-payment-details{list-style:none;margin:0;padding:0}.dashboard-payment-details,.dashboard-payment-details li+li{border-top:1px solid var(--border)}.dashboard-payment-detail-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px 8px 20px;font-size:13px;color:var(--text)}.dashboard-payment-detail-link:hover{background:var(--panel);text-decoration:none;color:var(--accent)}.dashboard-activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;max-height:320px;overflow-y:auto}.dashboard-activity-item{display:grid;grid-template-columns:88px 1fr;grid-gap:10px;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.dashboard-activity-item:last-child{border-bottom:none}.dashboard-activity-when{font-size:12px;line-height:1.4}.dashboard-activity-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.dashboard-activity-badge{font-size:10px}.dashboard-activity-loan{font-size:13px;font-weight:600}.dashboard-activity-detail{margin:0 0 4px;font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-activity-actor{font-size:11px}.dashboard-quick-action--primary{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--panel-2))}.dashboard-portfolio{margin-top:4px}.dashboard-portfolio-legend{flex:1 1;min-width:0}.dashboard-legend-row{display:flex;align-items:flex-start;gap:10px;width:100%}.dashboard-legend-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.dashboard-legend-label{font-weight:500}.dashboard-legend-meta{font-size:12px}.dashboard-dot-outstanding{background:var(--panel-2);border:1px solid var(--border)}.dashboard-portfolio-total{margin-top:8px;padding-top:10px;border-top:1px solid var(--border);font-size:13px}.dashboard-table-card{display:flex;flex-direction:column}.dashboard-table-wrap{overflow-x:auto}.dashboard-table{width:100%;border-collapse:collapse;font-size:13px}.dashboard-table td,.dashboard-table th{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border)}.dashboard-table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table-num{text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-table-ellipsis{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-table-empty{margin:0}.dashboard-table-footer{margin-top:auto;padding-top:12px}.dashboard-quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:10px;gap:10px}.dashboard-quick-action{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2);color:var(--text);transition:border-color .15s ease,background .15s ease}.dashboard-quick-action:hover{border-color:var(--accent);background:var(--panel);text-decoration:none}.dashboard-quick-action-label{font-weight:600;font-size:14px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px 20px;margin-bottom:16px;box-shadow:var(--shadow)}.card[id]{scroll-margin-top:var(--site-header-offset)}.loan-form-top{position:-webkit-sticky;position:sticky;top:var(--site-header-offset);z-index:20;margin-bottom:16px}.loan-form-top .loan-nav{margin-bottom:0;align-items:center}.loan-nav-fill{margin-left:auto;flex-shrink:0}.btn-test-data{display:inline-flex;align-items:center;justify-content:center;padding:5px 12px;font-size:13px;font-weight:600;line-height:1.25;color:#b91c1c;background:color-mix(in srgb,#ef4444 14%,var(--panel-2));border:1px solid color-mix(in srgb,#ef4444 40%,var(--border));border-radius:999px;cursor:pointer}.btn-test-data:hover:not(:disabled){color:#fff;background:#dc2626;border-color:#b91c1c}.btn-test-data:disabled{opacity:.55;cursor:not-allowed}.loan-form-top-error{margin:8px 0 0;padding:0 4px}.loan-nav{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.loan-nav a{padding:5px 12px;border-radius:999px;font-size:13px;font-weight:600;color:var(--muted)}.loan-nav a:hover{text-decoration:none;color:var(--accent);background:var(--panel-2)}.event-changes{margin:6px 0 0;padding-left:18px;font-size:13px;color:var(--muted)}.event-changes li{margin:2px 0}.loan-audit-rowbar{justify-content:space-between;gap:10px 16px;margin-bottom:8px}.loan-audit-filters,.loan-audit-rowbar{display:flex;flex-wrap:wrap;align-items:center}.loan-audit-filters{gap:8px 12px;min-width:0}.loan-audit-filter-status{font-size:12px}.loan-audit-expand-actions{display:flex;gap:8px;flex-shrink:0}.loan-audit-rowbar button{font-size:12px;padding:4px 12px}.loan-audit-table{table-layout:fixed;width:100%}.loan-audit-table col.loan-audit-col-when{width:11rem}.loan-audit-table col.loan-audit-col-action{width:12.5rem}.loan-audit-table col.loan-audit-col-detail{width:auto}.loan-audit-table col.loan-audit-col-by{width:16%;min-width:180px}.loan-audit-table td{vertical-align:top}.loan-audit-table .loan-audit-filter-row th{font-weight:400;vertical-align:middle;padding-top:6px;padding-bottom:10px;background:transparent;border-bottom:1px solid var(--border,#ddd)}.loan-audit-col-filter-label{display:block;width:100%;margin:0}.loan-audit-col-filter{display:block;width:100%;box-sizing:border-box;font-size:13px;padding:6px 8px;min-width:0}.audit-detail{line-height:1.5;white-space:pre-line}.audit-detail.is-clamped{max-height:calc(1.5em * 4);overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 62%,transparent);mask-image:linear-gradient(180deg,#000 62%,transparent)}.audit-detail-toggle{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:0;border:0;background:none;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer}.audit-detail-toggle:hover{text-decoration:underline}.audit-detail-toggle:before{content:"▸";display:inline-block;font-size:10px;transition:transform .15s ease}.audit-detail-toggle[aria-expanded=true]:before{transform:rotate(90deg)}.settings-subnav{display:flex;gap:12px;margin-bottom:20px}.settings-subnav-link{padding:6px 12px;border-radius:6px;text-decoration:none;color:var(--text);background:var(--panel-2);font-size:14px}.settings-subnav-link:hover{background:var(--border)}.preferences-page{display:flex;flex-direction:column;gap:16px}.preferences-category-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.preferences-list{list-style:none;margin:0;padding:0}.preferences-item{padding:14px 0;border-bottom:1px solid var(--border)}.preferences-item:last-child{border-bottom:0}.preferences-item-main{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.preferences-item-desc{margin:4px 0 6px;font-size:13px}.preferences-source{font-size:12px}.pref-toggle{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.pref-toggle-label{font-size:13px;font-weight:600;min-width:2.5rem}.pref-control-number,.pref-control-select,.pref-control-text{min-width:140px}.preferences-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.preferences-notice{margin:0;padding:10px 12px;border-radius:6px}.preferences-notice--ok{color:var(--good);background:color-mix(in srgb,var(--good) 12%,transparent)}.preferences-notice--error{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.preferences-banner{margin:0;padding:10px 12px;border-radius:6px;background:var(--panel-2)}.back-to-top{position:fixed;right:24px;bottom:24px;z-index:30;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;font-size:20px;line-height:1;color:#fff;background:var(--accent);border:1px solid var(--accent);box-shadow:var(--shadow)}.back-to-top:hover{text-decoration:none;filter:brightness(1.08)}.loan-summary-header{display:flex;flex-direction:column;gap:12px;padding:12px 16px;margin-bottom:12px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.loan-summary-header.is-pinned{position:-webkit-sticky;position:sticky;top:var(--site-header-offset);z-index:20}.loan-summary-header.is-unpinned{position:relative;z-index:1}.loan-summary-header.is-collapsed{gap:8px;padding-top:10px;padding-bottom:10px}.loan-summary-chrome{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:2px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.loan-summary-header.is-collapsed .loan-summary-chrome{padding-bottom:0;border-bottom:none}.loan-summary-chrome-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;line-height:1.25}.loan-summary-chrome-btn:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--panel)}.loan-summary-chrome-btn.is-active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.loan-summary-chrome-btn .loan-collapsible-caret{font-size:11px}.loan-summary-compact{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.loan-summary-compact-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;flex:1 1 240px}.loan-summary-compact-borrower{font-size:16px;font-weight:700;line-height:1.25}.loan-summary-compact-metrics{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.loan-summary-compact-metric{display:flex;flex-direction:column;gap:1px;min-width:0}.loan-summary-compact-metric .k{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.03em;line-height:1.2}.loan-summary-compact-metric .v{font-size:14px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.25}.loan-summary-actions.is-compact .btn-edit,.loan-summary-actions.is-compact .btn-secondary{min-height:34px;padding:6px 10px;font-size:13px}.loan-summary-identity{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.loan-summary-identity-main{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.loan-summary-borrower{margin:0;font-size:20px;line-height:1.25}.loan-summary-statuses{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.loan-summary-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.loan-summary-actions .btn-secondary{color:var(--text);font-weight:600;background:var(--panel)}.loan-summary-actions .btn-secondary:hover{color:var(--accent);background:var(--panel-2)}.loan-summary-actions .btn-edit,.loan-summary-actions .btn-secondary{min-height:38px;padding:9px 14px}.loan-actions-menu-wrap{position:relative;display:inline-flex}.loan-actions-menu-trigger{display:inline-flex;align-items:center;gap:6px}.loan-actions-menu-caret{font-size:11px;line-height:1;transition:transform .15s ease}.loan-actions-menu-caret.is-open{transform:rotate(180deg)}.loan-actions-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:220px;padding:6px;display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px rgba(15,23,42,.18)}.loan-actions-menu--portal{position:fixed;top:auto;right:auto;z-index:1500}.loan-actions-menu-label{padding:6px 10px 2px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.loan-actions-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:14px;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background .12s ease,color .12s ease}.loan-actions-menu-item:hover:not(:disabled){background:var(--panel-2);color:var(--accent)}.loan-actions-menu-item:disabled{opacity:.6;cursor:default}.loan-actions-menu-item-embed{padding:0;display:block}.loan-actions-menu-item-embed .loan-actions-menu-item-btn{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:14px;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background .12s ease,color .12s ease}.loan-actions-menu-item-embed .loan-actions-menu-item-btn:hover:not(:disabled){background:var(--panel-2);color:var(--accent)}.loan-actions-menu-item-embed .loan-actions-menu-item-btn:disabled{opacity:.6;cursor:default}.loan-actions-menu-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;flex-shrink:0}.loan-actions-menu-divider{display:block;height:1px;margin:4px 6px;background:var(--border)}.loan-detail-refresh,.print-loan-pdf-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.print-loan-pdf-btn{display:inline-flex;align-items:center;justify-content:center;min-width:38px;color:#e12127;background:#fdecec;border:1px solid #f4a4a7;border-radius:8px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;box-shadow:0 1px 2px rgba(225,33,39,.08)}.loan-summary-actions .print-loan-pdf-btn,.print-loan-pdf-btn{min-height:38px;padding:8px}.print-loan-pdf-btn:hover:not(:disabled){color:#fff;background:#e12127;border-color:#c4181e;box-shadow:0 2px 6px rgba(225,33,39,.28)}.print-loan-pdf-btn:focus-visible{outline:2px solid #e12127;outline-offset:2px}.print-loan-pdf-btn:disabled{cursor:wait;opacity:.65}[data-theme=dark] .print-loan-pdf-btn{color:#ff6b6f;background:rgba(225,33,39,.16);border-color:rgba(225,33,39,.45);box-shadow:none}[data-theme=dark] .print-loan-pdf-btn:hover:not(:disabled){color:#fff;background:#e12127;border-color:#e12127}.print-loan-pdf-icon{width:18px;height:18px;display:block}.print-loan-pdf-error{margin:0;padding:6px 10px;font-size:12px;font-weight:600;max-width:220px;text-align:right}.loan-actions-menu .print-loan-pdf-error{text-align:left;max-width:none;display:block;padding:4px 10px 8px}.loan-detail-refresh-error{margin:0;font-size:12px;line-height:1.35;max-width:220px;text-align:right}.btn-secondary .refresh-icon{font-size:13px;line-height:1;margin-right:4px}.loan-summary-metrics{padding-top:12px;border-top:1px solid var(--border)}.loan-summary-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px 14px;gap:10px 14px;padding-bottom:4px}.loan-summary-metric-card{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px;min-width:0;box-shadow:none}.loan-summary-metric-card.is-primary{background:var(--surface-primary);border-color:var(--border-primary)}.loan-summary-metric-card.is-overdue{background:color-mix(in srgb,var(--warn) 8%,var(--surface));border-color:color-mix(in srgb,var(--warn) 40%,var(--border-subtle))}[data-theme=dark] .loan-summary-metric-card.is-overdue{background:color-mix(in srgb,var(--warn) 12%,var(--surface));border-color:color-mix(in srgb,var(--warn) 38%,var(--border))}.loan-summary-metric-card.is-muted .v{color:var(--muted);font-weight:600}.loan-summary-statuses .badge.delinquent{display:inline-flex;align-items:center;gap:4px}.loan-summary-overdue-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.loan-summary-overdue-note{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--warn)}.loan-summary-metric-card .k{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.loan-summary-metric-card .v{font-size:15px;font-weight:700;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-summary-metric-card.is-primary .v{font-size:17px}.loan-summary-metric-card.is-overdue .v{color:var(--warn)}.loan-summary-metric-card.is-secondary .k{opacity:.85}.loan-summary-metric-card.is-secondary .v{font-size:13px;font-weight:600;color:var(--muted)}.loan-summary-next-payment{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.loan-summary-next-payment-amount{font-size:17px;font-weight:700;color:var(--text)}.loan-summary-next-payment-sep{color:var(--muted);font-weight:600}.loan-summary-next-payment-date{font-size:15px;font-weight:600;color:var(--text)}.loan-overview-hero{padding:10px 12px 8px;border:1px solid var(--border-subtle);border-radius:10px;background:var(--surface-group)}.loan-overview-commitment{margin:10px 0 0;font-size:12px;line-height:1.35}.loan-overview-progress-block{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-subtle)}.loan-overview-progress-label{margin:4px 0 0;font-size:12px;line-height:1.3}.progress-bar-compact{height:6px}.loan-overview-kpi-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:12px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.loan-overview-kpi-stat{display:flex;flex-direction:column;gap:2px;padding:9px 12px;min-width:0;background:transparent;border:none;border-right:1px solid var(--border-subtle);border-radius:0;box-shadow:none}.loan-overview-kpi-stat:last-child{border-right:none}.loan-overview-kpi-label{font-size:11px;font-weight:500;letter-spacing:.01em;color:var(--muted);line-height:1.25}.loan-overview-kpi-value{font-size:17px;font-weight:700;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2;letter-spacing:-.01em}.loan-overview-kpi-stat.is-emphasis .loan-overview-kpi-value{font-size:18px}.loan-overview-kpi-sub{font-size:12px;font-weight:500;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.25}.loan-overview-kpi-stat.is-warn .loan-overview-kpi-value{color:var(--warn)}.loan-overview-servicing{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.loan-overview-servicing .k{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.loan-overview-servicing .v{font-size:14px;font-weight:600;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-overview-servicing>div{display:flex;flex-direction:column;gap:2px}.loan-overview-warn-field .v{color:var(--warn)}.loan-overview-sections{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;margin-top:20px}@media (min-width:900px){.loan-overview-sections{grid-template-columns:1fr 1fr;gap:16px 20px}}.loan-overview-section{background:var(--surface);border:1px solid var(--border-subtle);border-radius:10px;padding:12px 14px;box-shadow:none}[data-theme=dark] .loan-overview-section{background:var(--surface);border-color:var(--border-subtle)}.loan-overview-section-title{margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--border-subtle);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}[data-theme=dark] .loan-overview-section-title{border-bottom-color:var(--border-subtle)}.loan-overview-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:20px;column-gap:20px;grid-row-gap:10px;row-gap:10px;margin:0}.loan-overview-section-grid>div{display:flex;flex-direction:column;gap:2px;min-width:0}.loan-overview-section-grid .k{color:var(--muted);font-size:11px;line-height:1.3}.loan-overview-section-grid .v{font-size:15px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.35;word-break:break-word}.loan-overview-fee-groups{display:flex;flex-direction:column;gap:0}.loan-overview-fee-group+.loan-overview-fee-group{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.loan-overview-fee-group-title{margin:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--muted);line-height:1.3}.loan-tabbar{position:-webkit-sticky;position:sticky;top:calc(var(--site-header-offset) + var(--loan-header-sticky-height, 0px));z-index:15;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 8px;margin-bottom:20px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.loan-tablist{display:flex;gap:4px;flex:1 1 auto;overflow-x:auto}.loan-tab{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:none;border-radius:999px;background:transparent;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}.loan-tab:hover{color:var(--accent);background:var(--panel-2)}.loan-tab.is-active{color:#fff;background:var(--accent)}.loan-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:11px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:color-mix(in srgb,var(--muted) 22%,transparent);color:var(--text)}.loan-tab.is-active .loan-tab-count{background:rgba(255,255,255,.28);color:#fff}.loan-tabbar-trailing{flex-shrink:0;margin-left:auto}.loan-tabpanel{display:flex;flex-direction:column;gap:4px;padding-top:4px}.asset-tabbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--border)}.asset-tab-flag{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;font-size:11px;font-weight:700;background:var(--warn);color:#fff}@media (max-width:900px){.loan-summary-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-overview-kpi-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.loan-overview-kpi-stat:nth-child(3){border-right:none}.loan-overview-kpi-stat:nth-child(n+4){border-top:1px solid var(--border-subtle)}.loan-overview-kpi-stat:nth-child(4){border-right:1px solid var(--border-subtle)}}@media (max-width:560px){.loan-summary-metrics-grid{grid-template-columns:1fr}.loan-overview-kpi-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-overview-kpi-stat{border-right:1px solid var(--border-subtle);border-top:none}.loan-overview-kpi-stat:nth-child(2n){border-right:none}.loan-overview-kpi-stat:nth-child(n+3){border-top:1px solid var(--border-subtle)}}@media (max-width:760px){.loan-summary-identity{flex-direction:column;align-items:stretch}.loan-summary-actions{margin-left:0;width:100%;flex-wrap:wrap}.loan-summary-compact{flex-direction:column;align-items:stretch}.loan-summary-compact-main{flex:1 1 auto}.loan-summary-actions.is-compact,.loan-summary-compact-metrics{width:100%}.loan-tabbar-trailing{display:none}}.tip{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;margin-left:6px;border-radius:50%;border:1px solid var(--field-border);color:var(--muted);background:var(--panel-2);font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:700;font-size:10px;line-height:1;cursor:help;position:relative;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tip:focus-visible,.tip:hover{color:var(--accent);border-color:var(--accent);outline:none}.tip:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:max-content;max-width:240px;white-space:normal;text-align:left;background:var(--text);color:var(--panel);padding:8px 10px;border-radius:8px;font-family:inherit;font-style:normal;font-weight:400;font-size:12px;line-height:1.4;box-shadow:0 6px 20px rgba(0,0,0,.22);opacity:0;visibility:hidden;transition:opacity .12s ease;z-index:30;pointer-events:none}.tip:focus-visible:after,.tip:hover:after{opacity:1;visibility:visible}.tip.tip-below:after{bottom:auto;top:calc(100% + 8px)}.info-tip-trigger{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;margin-left:4px;padding:0;border-radius:50%;border:1px solid var(--field-border);color:var(--muted);background:var(--panel-2);font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:700;font-size:10px;line-height:1;cursor:help;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;user-select:none}.info-tip-trigger:focus-visible,.info-tip-trigger:hover{color:var(--accent);border-color:var(--accent);outline:none}.info-tip-popover{position:fixed;z-index:4000;max-width:calc(100vw - 16px);padding:10px 12px;background:var(--text);color:var(--panel);border-radius:8px;font-size:12px;line-height:1.45;box-shadow:0 6px 20px rgba(0,0,0,.22);pointer-events:auto;white-space:pre-wrap}.grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.loan-card h3{margin:0 0 6px;font-size:16px}.loan-card .amount{font-size:24px;font-weight:600}.loan-card .asset-line{display:flex;align-items:center;gap:6px;margin:6px 0 2px;font-size:13px;color:var(--text)}.loan-card .asset-line .pin{font-size:12px;flex-shrink:0}.loan-card .asset-line .asset-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muted{color:var(--muted);font-size:13px}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;border:1px solid var(--border);background:var(--panel-2)}.badge.active{color:var(--good);border-color:var(--good)}.badge.delinquency-late,.badge.delinquent{color:var(--warn);border-color:var(--warn)}.badge.delinquency-default{color:var(--bad,#c45);border-color:var(--bad,#c45)}.badge.delinquency-current{color:var(--muted);border-color:var(--border)}.loan-card-statuses{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.payment-record-modal{max-width:520px}.payment-outstanding-breakdown{margin:12px 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2,rgba(0,0,0,.02))}.payment-outstanding-list{list-style:none;margin:8px 0 0;padding:0}.payment-outstanding-list li{display:flex;justify-content:space-between;gap:12px;padding:4px 0}.payment-outstanding-total{margin-top:6px;padding-top:8px;border-top:1px solid var(--border);font-weight:600}.alloc-preview-summary{display:flex;flex-wrap:wrap;gap:18px;margin:12px 0;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2,rgba(0,0,0,.02))}.alloc-preview-summary>div{display:flex;flex-direction:column;gap:2px}.alloc-preview-summary .muted{font-size:12px}.alloc-preview{margin:12px 0 16px;max-height:320px;overflow-y:auto;border:1px solid var(--border);border-radius:8px}.alloc-preview-table{width:100%;border-collapse:collapse;font-size:14px}.alloc-preview-table td,.alloc-preview-table th{padding:7px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.alloc-preview-table thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface-2,rgba(0,0,0,.03));font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted,#667)}.alloc-preview-table tfoot td{border-bottom:none;border-top:2px solid var(--border)}.alloc-preview-inst{display:table-cell;white-space:nowrap}.alloc-preview-inst strong{display:block}.alloc-preview-inst .muted{display:block;font-size:12px}.alloc-preview-inst .badge{margin-top:4px}.payment-allocation-mode{border:none;margin:0 0 14px;padding:0}.payment-allocation-option{display:flex;gap:8px;align-items:flex-start;margin-bottom:8px;cursor:pointer}.payment-allocation-hint{display:block;font-size:.85em;margin-top:2px}.payment-manual-grid{display:grid;grid-gap:10px;gap:10px;margin-bottom:14px}.payment-manual-total{margin:0}.badge.default,.badge.late{text-transform:capitalize}table{width:100%;border-collapse:collapse;font-size:14px}td,th{text-align:right;padding:8px 10px;border-bottom:1px solid var(--border)}td:first-child,th:first-child{text-align:left}.loan-detail-main .fees-table thead th{background:var(--surface-muted);border-bottom-color:var(--border-subtle);color:var(--muted)}thead th{color:color-mix(in srgb,var(--text) 82%,var(--muted));font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;background:var(--table-head-bg);padding:10px 12px;border-bottom:2px solid var(--table-head-border);vertical-align:bottom}.data-table-sticky-head thead th{position:-webkit-sticky;position:sticky;top:var(--site-header-offset);z-index:5;background:var(--table-head-bg);box-shadow:0 2px 0 var(--table-head-border)}.audit-table-wrap .data-table-sticky-head thead th,.payment-tracker-table-scroll .data-table-sticky-head thead th{position:static;top:auto;z-index:auto;box-shadow:none;background:var(--table-head-bg)}.loans-table-wrap .data-table-sticky-head thead th{position:-webkit-sticky;position:sticky;top:var(--site-header-offset);z-index:5;box-shadow:0 2px 0 var(--table-head-border);background:var(--table-head-bg)}.loan-detail-main .data-table-sticky-head thead th{top:calc(var(--site-header-offset) + var(--loan-header-sticky-height, 0px) + var(--loan-tabbar-offset))}tbody tr:hover{background:var(--panel-2)}.summary{display:flex;flex-wrap:wrap;gap:28px;margin:8px 0 4px}.summary div span{display:block}.summary .k{color:var(--muted);font-size:12px}.summary .v{font-size:18px;font-weight:600}.error{border-color:#6b2a32;background:#2a1419;color:#f3c0c7}.back{font-size:13px}.page-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:0;margin:0 0 8px;font-size:12px;line-height:1.3;color:var(--muted)}.page-breadcrumb-segment{display:inline-flex;align-items:center}.page-breadcrumb-sep{margin:0 6px;opacity:.45;-webkit-user-select:none;-moz-user-select:none;user-select:none}.page-breadcrumb-link{color:var(--muted);text-decoration:none}.page-breadcrumb-link:hover{color:var(--accent);text-decoration:underline}.page-breadcrumb-current{color:var(--text);font-weight:500}.badge.draft{color:var(--muted)}.badge.approved,.badge.reserve{color:var(--accent);border-color:var(--accent)}.badge.reserve{background:var(--ring)}.loan-number-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:8px;font-size:15px;font-weight:700;letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text);background:color-mix(in srgb,var(--muted) 16%,transparent);border:1px solid color-mix(in srgb,var(--muted) 40%,transparent)}.loan-number-hash{color:var(--muted);font-weight:600}.lifecycle-chain{list-style:none;display:flex;padding:0;margin:0}.lifecycle-step{position:relative;flex:1 1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}.lifecycle-step:not(:last-child):after{content:"";position:absolute;top:14px;left:50%;width:100%;height:2px;background:var(--border);z-index:0}.lifecycle-step.connector-done:not(:last-child):after{background:var(--good)}.lifecycle-dot{position:relative;z-index:1;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--surface);color:var(--muted);border:2px solid var(--border-subtle)}.lifecycle-step.done .lifecycle-dot{background:var(--good);color:#fff;border-color:var(--good)}.lifecycle-label{font-size:13px;font-weight:600}.lifecycle-date,.lifecycle-step.pending .lifecycle-label{color:var(--muted)}.lifecycle-date{font-size:11px;line-height:1.3}.loan-cards-bar{display:flex;align-items:center;gap:6px;flex-shrink:0}.loan-nav .loan-cards-bar .btn-secondary{padding:5px 12px;font-size:13px;font-weight:600;border-radius:999px;white-space:nowrap}.loan-collapsible-head{display:grid;grid-template-columns:auto 1fr auto;align-items:start;grid-gap:10px 12px;gap:10px 12px}.loan-collapsible-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-top:2px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--text);cursor:pointer;flex-shrink:0}.loan-collapsible-toggle-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--panel)}.loan-collapsible-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;padding:0;margin:0;cursor:pointer;color:inherit;font:inherit;text-align:left;flex:1 1;min-width:0}.loan-collapsible-caret{display:inline-block;font-size:14px;font-weight:700;line-height:1;color:inherit;transition:transform .12s ease}.loan-collapsible-caret.open{transform:rotate(90deg)}.loan-collapsible-title{min-width:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.loan-collapsible-title:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.loan-collapsible-title h2,.loan-collapsible-title h3{margin:0}.loan-collapsible-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;flex-shrink:0;justify-self:end}.loan-collapsible-body{margin-top:16px}.loan-collapsible-body[hidden]{display:none}.loan-collapsible.is-collapsed .loan-collapsible-head{margin-bottom:0}.loan-collapsible.is-collapsed .loan-collapsible-body{margin-top:0}.participant-agreements-list{display:flex;flex-direction:column;gap:12px}.participant-agreement-card{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:var(--panel)}.participant-agreement-card.is-collapsed{padding-bottom:12px}.participant-collapsed-summary{display:flex;flex-direction:column;gap:8px;min-width:0}.participant-collapsed-summary-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.participant-collapsed-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:6px 16px;gap:6px 16px;font-size:13px}.participant-summary-item{display:flex;flex-direction:column;gap:1px;min-width:0}.participant-summary-label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.participant-summary-value{color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis}.participant-section-heading{margin:18px 0 8px;font-size:14px;font-weight:600}.participant-section-heading:first-of-type{margin-top:0}.participant-schedule-view{margin-top:8px}.participant-schedule-view .schedule-view-toolbar{margin-bottom:10px}.participant-schedule-table.schedule-table{table-layout:auto;min-width:0;width:100%;border-collapse:separate;border-spacing:0}.participant-schedule-table.schedule-table>tbody>tr>td,.participant-schedule-table.schedule-table>tfoot>tr>td,.participant-schedule-table.schedule-table>thead>tr>th{padding:8px 10px;line-height:1.3;vertical-align:middle;height:2.75rem;box-sizing:border-box}.participant-schedule-table.schedule-table>thead>tr>th{height:auto;min-height:2.5rem;vertical-align:middle;white-space:normal;line-height:1.2}.participant-schedule-table.schedule-table>tbody>tr.schedule-detail>td{height:auto;vertical-align:top;text-align:left}.participant-schedule-table.schedule-table>tbody>tr>td.schedule-col-amt,.participant-schedule-table.schedule-table>tfoot>tr>td.schedule-col-amt,.participant-schedule-table.schedule-table>thead>tr>th.schedule-col-amt{text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.participant-schedule-table.schedule-table>tbody>tr>td.schedule-col-action,.participant-schedule-table.schedule-table>tbody>tr>td.schedule-col-date,.participant-schedule-table.schedule-table>tbody>tr>td.schedule-col-seq,.participant-schedule-table.schedule-table>tbody>tr>td.schedule-col-status,.participant-schedule-table.schedule-table>tbody>tr>td:first-child,.participant-schedule-table.schedule-table>tfoot>tr>td.schedule-col-action,.participant-schedule-table.schedule-table>tfoot>tr>td.schedule-col-date,.participant-schedule-table.schedule-table>tfoot>tr>td.schedule-col-seq,.participant-schedule-table.schedule-table>tfoot>tr>td.schedule-col-status,.participant-schedule-table.schedule-table>tfoot>tr>td:first-child,.participant-schedule-table.schedule-table>thead>tr>th.schedule-col-action,.participant-schedule-table.schedule-table>thead>tr>th.schedule-col-date,.participant-schedule-table.schedule-table>thead>tr>th.schedule-col-seq,.participant-schedule-table.schedule-table>thead>tr>th.schedule-col-status,.participant-schedule-table.schedule-table>thead>tr>th:first-child{text-align:center}.participant-schedule-table .schedule-col-seq{width:3.25rem;white-space:nowrap}.participant-schedule-table .schedule-col-date{width:6.5rem;white-space:nowrap}.participant-schedule-table .schedule-col-status{width:8rem;min-width:7.5rem}.participant-schedule-table .schedule-col-action{width:9.75rem;min-width:9.25rem}.participant-schedule-table .schedule-cell-center{display:flex;align-items:center;justify-content:center;width:100%;min-height:1.75rem}.participant-schedule-table .schedule-col-seq .schedule-cell-center{gap:4px}.participant-schedule-table .schedule-col-seq .caret{margin-right:0;flex:none}.participant-schedule-table .schedule-col-action .btn-pill{display:inline-flex;align-items:center;justify-content:center;min-width:8.75rem;padding:6px 12px;font-size:12px;line-height:1.2}.participant-schedule-table .schedule-col-amt .interest-info-trigger,.participant-schedule-table .schedule-col-status .interest-info-trigger{display:inline-flex;align-items:center;justify-content:center;max-width:100%;gap:4px}.participant-schedule-table .schedule-col-status .schedule-status-badge,.participant-schedule-table .schedule-col-status .schedule-status-badge.badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;white-space:normal;max-width:100%}.participant-schedule-table .schedule-totals-row>td{font-weight:600}.schedule-status-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;max-width:100%;padding:3px 10px;min-height:1.5rem;border-radius:999px;font-size:11px;line-height:1.2;border:1px solid var(--border);background:var(--panel-2);text-align:center;box-sizing:border-box}.schedule-status-badge.schedule-status-badge--single{flex-direction:row;white-space:nowrap}.schedule-status-badge__line{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-status-badge__line--sub{font-size:10px;line-height:1.15;opacity:.92}.badge.badge-success,.schedule-status-badge.badge-success{color:var(--good);border-color:var(--good)}.badge.badge-warning,.schedule-status-badge.badge-warning{color:var(--warn);border-color:var(--warn)}.badge.badge-danger,.schedule-status-badge.badge-danger{color:var(--bad,#c45);border-color:var(--bad,#c45)}.lifecycle-branches{margin:8px 0 0;padding-top:8px;border-top:1px solid var(--border-subtle);position:relative}.lifecycle-branches:before{display:none}.lifecycle-branches-hub{margin:0 0 6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;text-align:left}.lifecycle-branches-split{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;position:relative}.lifecycle-branches-split:before{display:none}.lifecycle-branch{padding-top:0;position:relative}.lifecycle-branch:before{display:none}.lifecycle-branch-title{margin:0 0 6px;font-size:11px;font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lifecycle-branch-title a{color:var(--text);text-decoration:none;font-weight:600}.lifecycle-branch-title a:hover{color:var(--accent);text-decoration:underline}.lifecycle-branch-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.lifecycle-branch-node{display:flex;gap:8px;align-items:flex-start;padding:5px 8px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface);box-shadow:none}.lifecycle-branch-node--draw{border-left:3px solid var(--accent-draw)}.lifecycle-branch-node--extension{border-left:3px solid var(--accent-extension)}.lifecycle-branch-node--payoff{border-left:3px solid var(--accent-payoff)}.lifecycle-branch-node.done .lifecycle-branch-dot{background:var(--good);border-color:var(--good)}.lifecycle-branch-node--draw.done .lifecycle-branch-dot{background:var(--accent-draw);border-color:var(--accent-draw)}.lifecycle-branch-node--extension.done .lifecycle-branch-dot{background:var(--accent-extension);border-color:var(--accent-extension)}.lifecycle-branch-node--payoff.done .lifecycle-branch-dot{background:var(--accent-payoff);border-color:var(--accent-payoff)}.lifecycle-branch-dot{flex-shrink:0;width:8px;height:8px;margin-top:4px;border-radius:50%;border:none;background:var(--border-subtle)}.lifecycle-branch-label{font-size:12px;font-weight:600;line-height:1.25}.lifecycle-branch-meta{font-size:10px;color:var(--muted);line-height:1.25}.lifecycle-branch-body{display:flex;flex-direction:column;gap:1px;min-width:0}.lifecycle-branch-empty{margin:0;font-size:12px;text-align:left}.lifecycle-branches-split-single{grid-template-columns:1fr;max-width:320px;margin:0 auto}.lifecycle-branches-split-single:before{width:2px;height:10px}@media (max-width:720px){.lifecycle-branches{margin-left:0;margin-right:0}.lifecycle-branches-split{grid-template-columns:1fr;gap:14px}.lifecycle-branch:before,.lifecycle-branches-split:before{display:none}}.badge.closed{color:var(--muted)}.badge.paid-off{color:var(--good);border-color:var(--good);background:color-mix(in srgb,var(--good) 10%,transparent)}.badge.servicing-current,.badge.servicing-in-progress{color:var(--muted);border-color:var(--border)}.badge.servicing-late{color:var(--warn);border-color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent)}.badge.servicing-default{color:var(--bad,#c45);border-color:var(--bad,#c45);background:color-mix(in srgb,var(--bad,#c45) 10%,transparent)}.badge.servicing-paid-off{color:var(--good);border-color:var(--good);background:color-mix(in srgb,var(--good) 10%,transparent)}.badge.servicing-closure-review,.badge.servicing-for-closure{color:#8a5a00;border-color:#d99a2b;background:color-mix(in srgb,#d99a2b 12%,transparent)}.badge.servicing-foreclosure{color:#9a3412;border-color:#ea580c;background:color-mix(in srgb,#ea580c 12%,transparent)}.badge.servicing-reo{color:var(--bad,#c45);border-color:var(--bad,#c45);background:color-mix(in srgb,var(--bad,#c45) 14%,transparent)}.page-head{justify-content:space-between;gap:16px}.head-actions,.page-head{display:flex;align-items:center}.head-actions{gap:8px}.field-hint{display:block;margin-top:5px;font-size:12px;color:var(--muted)}.amount-field{margin-bottom:14px}.amount-field-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.amount-field-label{font-size:13px;color:var(--muted)}.amount-field-actions{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;justify-content:flex-end}.amount-field-action-sep{font-size:12px;color:var(--muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.amount-field-action{border:none;background:none;padding:0;font:inherit;font-size:12px;color:var(--accent);cursor:pointer;text-align:right;white-space:nowrap}.amount-field-action:hover:not(:disabled){text-decoration:underline}.amount-field-action:disabled{color:var(--muted);cursor:not-allowed;opacity:.7}.form-field-error{margin:8px 0 0;font-size:13px;color:var(--warn)}.badge.prospect{color:var(--accent)}.badge.blacklisted,.badge.suspended{color:var(--warn);border-color:var(--warn)}.badge.paid,.badge.posted{color:var(--good);border-color:var(--good)}.badge.partial{color:var(--warn);border-color:var(--warn)}.badge.pending,.badge.reversed{color:var(--muted)}.badge.reversed{text-decoration:line-through}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:20px;z-index:10000;pointer-events:auto}.modal-overlay.modal-overlay-nested{z-index:10100}.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:22px 24px;width:100%;max-width:460px;max-height:90vh;overflow-y:auto}.modal-card.modal-card-wide{max-width:720px}.modal-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.modal-dialog-title{margin:0;flex:1 1;min-width:0}.modal-dialog-title-spacer{flex:1 1}.modal-dialog-close{flex-shrink:0;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--text);font-size:20px;line-height:1;cursor:pointer}.modal-dialog-close:hover:not(:disabled){background:var(--panel)}.modal-dialog-close:disabled{opacity:.5;cursor:not-allowed}.action-status{margin:0 0 14px;padding:10px 12px;border-radius:8px;font-size:14px;font-weight:600}.action-status-loading{background:var(--panel-2);border:1px solid var(--border);color:var(--text)}.action-status-success{background:color-mix(in srgb,var(--good) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--good) 35%,var(--border));color:var(--good)}.action-status-error{background:color-mix(in srgb,#dc2626 12%,var(--panel));border:1px solid color-mix(in srgb,#dc2626 35%,var(--border));color:#dc2626}.btn-danger{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;font-size:14px;font-weight:600;line-height:1.25;color:#fff;background:#dc2626;border:1px solid #dc2626;border-radius:8px;cursor:pointer}.btn-danger:hover{background:#b91c1c;border-color:#b91c1c}.btn-danger:disabled{opacity:.6;cursor:default}.btn-danger-secondary{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;font-size:14px;font-weight:500;line-height:1.25;color:#dc2626;background:var(--panel-2);border:1px solid color-mix(in srgb,#dc2626 35%,var(--border));border-radius:8px;cursor:pointer}.btn-danger-secondary:hover{color:#fff;background:#dc2626;border-color:#dc2626}.extension-remove-confirm{border:1px solid color-mix(in srgb,#dc2626 35%,var(--border));background:color-mix(in srgb,#dc2626 6%,var(--panel));border-radius:8px;padding:12px;min-width:260px}.modal-card label{display:block;font-size:13px;color:var(--muted);margin-bottom:14px}.modal-card .row{display:flex;gap:12px}.modal-card .row label{flex:1 1}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.copy-loan-result{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;margin-bottom:6px;padding:10px 12px;text-align:left;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.copy-loan-result:hover:not(:disabled){border-color:var(--accent)}.copy-loan-result-number{font-weight:700;color:var(--text)}.copy-loan-result-meta{font-size:13px;color:var(--muted)}.payment-method-field{border:none;margin:0 0 14px;padding:0}.payment-method-field legend{font-size:13px;color:var(--muted);margin-bottom:6px}.payment-method-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}@media (max-width:480px){.payment-method-grid{grid-template-columns:1fr}}.payment-method-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);cursor:pointer;text-align:left;font:inherit;color:var(--text);width:100%;transition:border-color .15s,background .15s;position:relative}label.payment-method-card input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.default-payment-method-picker{margin-bottom:0}.default-payment-method-picker legend{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.payment-method-card:hover:not(:disabled){border-color:var(--accent)}.payment-method-card.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--panel-2));box-shadow:0 0 0 1px var(--accent)}.payment-method-card:disabled{opacity:.45;cursor:not-allowed}.payment-method-card-title{font-weight:600;font-size:13px;line-height:1.2}.payment-method-card-hint{font-size:11px;line-height:1.25;color:var(--muted)}.penalty-legend{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin:4px 0 14px;font-size:13px}.penalty-legend ul{margin:6px 0 0;padding-left:18px}.penalty-legend li{margin:3px 0;color:var(--muted)}.reserve-prepaid-row{background:color-mix(in srgb,var(--accent) 8%,transparent)}.penalty-amt{color:#e5484d}.penalty-total{font-weight:700}.schedule-table.gridlines,.schedule-table.gridlines td,.schedule-table.gridlines th{border:1px solid var(--border)}.schedule-table.gridlines thead th{border-bottom:2px solid var(--table-head-border)}.schedule-table.gridlines .detail-table,.schedule-table.gridlines .detail-table td,.schedule-table.gridlines .detail-table th{border:1px solid var(--border)}.schedule-row{cursor:pointer}.schedule-row--penalty>td{background:color-mix(in srgb,#e5484d 7%,var(--panel))}.schedule-row--penalty>td.schedule-due-date-cell{box-shadow:inset 3px 0 0 color-mix(in srgb,#e5484d 55%,transparent)}.schedule-row--penalty-paid>td{background:color-mix(in srgb,var(--warn) 7%,var(--panel))}.schedule-row--penalty-paid>td.schedule-due-date-cell{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--warn) 55%,transparent)}.schedule-detail--segment-original>td,.schedule-row--segment-original>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#94a3b8 65%,transparent)}.schedule-detail--segment-ext-1>td,.schedule-row--segment-ext-1>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#3b82f6 75%,transparent)}.schedule-detail--segment-ext-2>td,.schedule-row--segment-ext-2>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#8b5cf6 75%,transparent)}.schedule-detail--segment-ext-3>td,.schedule-row--segment-ext-3>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#14b8a6 75%,transparent)}.schedule-detail--segment-ext-4>td,.schedule-row--segment-ext-4>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#f59e0b 75%,transparent)}.schedule-detail--segment-ext-5>td,.schedule-row--segment-ext-5>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#f43f5e 75%,transparent)}.schedule-detail--segment-ext-6>td,.schedule-row--segment-ext-6>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#6366f1 75%,transparent)}.schedule-detail--segment-unknown>td,.schedule-row--segment-unknown>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,var(--muted) 80%,transparent)}.schedule-detail--post-maturity>td,.schedule-row--post-maturity>td.schedule-col-seq{box-shadow:inset 4px 0 0 color-mix(in srgb,#e5484d 80%,transparent)}.schedule-row--has-detail .schedule-col-seq .caret{color:var(--accent)}.schedule-penalty-cell{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,#e5484d 12%,transparent);font-weight:700}.schedule-penalty-cell--paid{background:color-mix(in srgb,var(--warn) 12%,transparent)}.schedule-penalty-cell--waived{background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted);font-weight:600;font-size:12px;letter-spacing:.01em}.schedule-penalty-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.badge.penalty-warn{background:color-mix(in srgb,var(--warn) 18%,var(--panel));color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 40%,var(--border))}.schedule-detail.schedule-detail--penalty>td{box-shadow:inset 3px 0 0 color-mix(in srgb,#e5484d 55%,transparent);background:color-mix(in srgb,#e5484d 4%,var(--panel-2))}.schedule-detail.schedule-detail--penalty-paid>td{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--warn) 55%,transparent);background:color-mix(in srgb,var(--warn) 4%,var(--panel-2))}.schedule-penalty-note{margin:0 0 10px;padding:8px 12px;font-size:13px}.schedule-installment-records{margin:0 0 4px}.schedule-installment-records-title{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--text)}.schedule-installment-records-list{margin:0;padding:0;list-style:none}.schedule-installment-record{margin:0;padding:8px 10px;border-radius:6px;background:color-mix(in srgb,#e5484d 6%,var(--panel));border:1px solid color-mix(in srgb,#e5484d 18%,var(--border))}.schedule-installment-record+.schedule-installment-record{margin-top:8px}.schedule-installment-record--waived{background:color-mix(in srgb,var(--muted) 6%,var(--panel));border:1px solid color-mix(in srgb,var(--muted) 22%,var(--border))}.schedule-installment-note-summary{margin:0;font-size:13px;line-height:1.45}.schedule-installment-note-reason{font-style:italic}.schedule-installment-note-meta,.schedule-installment-note-reason{margin:4px 0 0;font-size:12px;line-height:1.4}.schedule-installment-context-list{padding:8px 10px;border-radius:6px;background:var(--panel);border:1px solid var(--border)}.schedule-installment-context-item{margin:0;font-size:13px;line-height:1.45}.schedule-installment-context-item+.schedule-installment-context-item{margin-top:4px}.schedule-installment-context-label{color:var(--muted)}.participant-payment-tracker-table .num{text-align:right;white-space:nowrap}.participant-tracker-notes{max-width:180px;font-size:12px;color:var(--muted)}.schedule-flags{flex-wrap:nowrap;gap:4px;max-width:100%}.schedule-flag,.schedule-flags{display:inline-flex;align-items:center;justify-content:center}.schedule-flag{min-width:1.5rem;padding:1px 5px;border-radius:4px;font-size:10px;font-weight:700;line-height:1.3;letter-spacing:.02em;white-space:nowrap;background:var(--panel-2);border:1px solid var(--border);color:var(--muted)}.schedule-flag--reserve{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.schedule-flag--penalty{color:#c2410c;border-color:color-mix(in srgb,#e5484d 35%,var(--border));background:color-mix(in srgb,#e5484d 10%,var(--panel))}.schedule-flag--penalty-paid{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 35%,var(--border));background:color-mix(in srgb,var(--warn) 10%,var(--panel))}.schedule-flag--waived{color:var(--muted);border-color:color-mix(in srgb,var(--muted) 30%,var(--border));background:color-mix(in srgb,var(--muted) 10%,var(--panel))}.schedule-flag--info{color:var(--text)}.schedule-flag--danger{color:#e5484d;border-color:color-mix(in srgb,#e5484d 40%,var(--border));background:color-mix(in srgb,#e5484d 10%,var(--panel))}.schedule-row .caret{display:inline-block;margin-right:8px;font-size:11px;color:var(--muted);transition:transform .12s ease}.schedule-row .caret.open{transform:rotate(90deg)}.schedule-row .pay-count{display:inline-block;margin-left:8px;min-width:16px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;line-height:16px;text-align:center}.schedule-draw-row td{background:color-mix(in srgb,var(--accent) 10%,var(--panel));border-top:2px solid color-mix(in srgb,var(--accent) 35%,transparent);font-size:14px}.schedule-draw-row .badge{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.schedule-funding-breakdown{display:flex;flex-wrap:wrap;gap:2px 18px;margin:4px 0 0;font-size:13px}.schedule-funding-breakdown-item{display:flex;gap:6px;align-items:baseline}.schedule-funding-breakdown-item dt{color:var(--muted)}.schedule-funding-breakdown-item dd{margin:0;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.schedule-funding-adjustment-row td{border-top:1px dashed color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--panel))}.schedule-funding-hidden-note{margin:0 0 12px;padding:6px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--panel));font-size:13px;line-height:1.45;color:var(--text)}.schedule-detail>td{background:var(--panel-2);padding:6px 14px 12px}.schedule-table>tbody>tr.schedule-row--expanded>td{background:color-mix(in srgb,var(--accent) 4%,var(--panel));border-top:1px solid var(--border-primary);border-bottom:1px solid color-mix(in srgb,var(--accent) 14%,var(--border))}.schedule-table>tbody>tr.schedule-row--expanded>td:first-child{border-left:2px solid color-mix(in srgb,var(--accent) 48%,var(--border));border-top-left-radius:8px}.schedule-table>tbody>tr.schedule-row--expanded>td:last-child{border-right:1px solid var(--border-primary);border-top-right-radius:8px}.schedule-table>tbody>tr.schedule-row--expanded.schedule-row--penalty>td{background:color-mix(in srgb,#e5484d 7%,color-mix(in srgb,var(--accent) 3%,var(--panel)))}.schedule-table>tbody>tr.schedule-row--expanded.schedule-row--penalty-paid>td{background:color-mix(in srgb,var(--warn) 7%,color-mix(in srgb,var(--accent) 3%,var(--panel)))}.schedule-table>tbody>tr.schedule-row--expanded.schedule-row--business-date:not(.schedule-row--penalty):not(.schedule-row--penalty-paid)>td{background:color-mix(in srgb,var(--warn) 8%,color-mix(in srgb,var(--accent) 3%,var(--panel)))}.schedule-table>tbody>tr.schedule-row--expanded+tr.schedule-detail>td{background:color-mix(in srgb,var(--accent) 6%,var(--panel-2));border-left:2px solid color-mix(in srgb,var(--accent) 48%,var(--border));border-right:1px solid var(--border-primary);border-bottom:1px solid var(--border-primary);border-bottom-left-radius:8px;border-bottom-right-radius:8px;padding:10px 14px 14px}.schedule-table>tbody>tr.schedule-row--expanded+tr.schedule-detail.schedule-detail--penalty>td{background:color-mix(in srgb,#e5484d 4%,color-mix(in srgb,var(--accent) 5%,var(--panel-2)))}.schedule-table>tbody>tr.schedule-row--expanded+tr.schedule-detail.schedule-detail--penalty-paid>td{background:color-mix(in srgb,var(--warn) 4%,color-mix(in srgb,var(--accent) 5%,var(--panel-2)))}.detail-table{font-size:13px}.detail-table td,.detail-table th{border-bottom:1px solid var(--border);padding:6px 10px}.reversed-line td{color:var(--muted);text-decoration:line-through}.btn-primary{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:1px solid transparent;border-radius:8px;padding:9px 16px;font-size:14px;line-height:1.25;font-weight:600;cursor:pointer;text-decoration:none}.btn-primary:hover{filter:brightness(1.08);text-decoration:none}.btn-primary:disabled{opacity:.6;cursor:default}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);padding:9px 12px;font-size:14px;font-weight:500;line-height:1.25;text-decoration:none;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;cursor:pointer}a.btn-secondary:hover,button.btn-secondary:hover:not(:disabled){color:var(--accent);border-color:var(--accent);text-decoration:none}.btn-secondary:disabled{opacity:.45;cursor:not-allowed}.btn-edit{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--accent);background:var(--ring);border:1px solid var(--accent);border-radius:8px;padding:9px 16px;font-size:14px;line-height:1.25;font-weight:600;text-decoration:none;transition:border-color .15s ease,background .15s ease,color .15s ease}.btn-edit:hover{background:var(--accent);color:#fff;text-decoration:none}.btn-edit .edit-icon{font-size:13px;line-height:1}.fees-table td,.fees-table th{text-align:left}.fees-table td.num,.fees-table th.num{text-align:right}.fees-table td.date,.fees-table th.date{white-space:nowrap}.loan-audit-table td.loan-audit-by-col,.loan-audit-table th.loan-audit-by-col{min-width:180px;width:16%;white-space:nowrap}.schedule-table td.date,.schedule-table th.date{white-space:nowrap}.schedule-table{width:100%;min-width:1080px;table-layout:fixed;border-collapse:separate;border-spacing:0}.schedule-table-wrap .schedule-table thead th{background:var(--table-head-bg);box-sizing:border-box;border-bottom:2px solid var(--table-head-border);height:auto;vertical-align:bottom;font-weight:700;color:color-mix(in srgb,var(--text) 82%,var(--muted))}.schedule-table thead th.schedule-col-head-wrap{white-space:normal;line-height:1.15;padding-top:6px;padding-bottom:6px;min-height:2.85rem;overflow:hidden}.schedule-th-stack{flex-direction:column;justify-content:flex-end;gap:1px}.schedule-th-stack,.schedule-th-with-tip{display:inline-flex;align-items:center;max-width:100%}.schedule-th-with-tip{justify-content:center;gap:2px}.schedule-th-with-tip .info-tip-trigger{flex-shrink:0;margin-left:0}.schedule-table thead th.schedule-col-head-wrap:has(.schedule-th-with-tip){overflow:visible}.schedule-th-line{display:block;line-height:1.15;white-space:nowrap}.schedule-table>tbody>tr>td,.schedule-table>tfoot>tr>td,.schedule-table>thead>tr>th{text-align:center;vertical-align:middle}.schedule-table td:first-child,.schedule-table th:first-child{text-align:center}.schedule-col-seq{width:3.25rem}.schedule-prorated-period-label{display:block;font-size:11px;line-height:1.25;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.schedule-col-date{width:6.5rem}.schedule-col-outstanding{width:5.5rem}.schedule-col-amt{width:5.5rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.schedule-table tbody td.schedule-col-amt{white-space:nowrap}.schedule-col-flags{width:4.5rem}.schedule-col-status{width:5.5rem}.schedule-table--revenue{min-width:1200px}.schedule-table--participant-allocation.schedule-table--revenue{min-width:1480px}.schedule-col-revenue{width:7rem}.schedule-revenue-cell{display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.schedule-revenue-forecast-badge{padding:.05rem .3rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--muted);font-size:.6rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.schedule-revenue-note{margin:0 0 8px;font-size:12px}.schedule-col-status .badge{display:inline-block;max-width:100%;white-space:nowrap}.status-override-badge{display:inline-block;margin-left:.35rem;padding:.1rem .35rem;border-radius:999px;font-size:.65rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#7c3aed;background:#f3e8ff;border:1px solid #c4b5fd;vertical-align:middle;cursor:help}.schedule-status-override{margin:10px 0 8px;padding:10px 12px;border:1px solid var(--border,#d1d5db);border-radius:8px;background:#fafafa}.schedule-status-override-form label{display:block;margin-top:8px;font-size:.85rem}.schedule-status-override-form input[type=text],.schedule-status-override-form select{width:100%;max-width:28rem;margin-top:4px}.schedule-status-override-actions{display:flex;gap:.75rem;align-items:center;margin-top:10px}.schedule-status-override-summary{margin:0 0 6px;font-size:.9rem}.schedule-col-action{width:6.5rem}.schedule-view-toolbar{margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--panel-2) 55%,var(--panel))}.schedule-view-toolbar-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-bottom:10px}.schedule-view-toolbar-title{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap}.schedule-view-toolbar-hint{font-size:12px;line-height:1.4;flex:1 1 220px}.schedule-table-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 22px}@media (max-width:720px){.schedule-view-toolbar:not(.schedule-view-toolbar--compact) .schedule-table-toolbar{flex-direction:column;align-items:stretch;gap:10px}.schedule-view-toolbar:not(.schedule-view-toolbar--compact) .schedule-toolbar-control{width:100%}.schedule-view-toolbar:not(.schedule-view-toolbar--compact) .schedule-toolbar-control .schedule-segmented-control{width:100%;justify-content:stretch}.schedule-view-toolbar:not(.schedule-view-toolbar--compact) .schedule-toolbar-control .schedule-segment-btn{flex:1 1;text-align:center}}.schedule-fullscreen-btn{margin-left:auto;border:1px solid var(--border);background:var(--panel);cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;color:var(--text);padding:6px 12px;border-radius:6px;white-space:nowrap;line-height:1.2}.schedule-fullscreen-btn:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));color:var(--accent)}.schedule-fullscreen{position:fixed;inset:0;z-index:200;background:var(--bg);display:flex;flex-direction:column;padding:0;overflow:hidden}.schedule-fullscreen-sticky{flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;z-index:12;background:var(--bg);border-bottom:1px solid var(--border);box-shadow:0 1px 0 color-mix(in srgb,var(--text) 6%,transparent)}.schedule-fullscreen-bar{display:flex;align-items:center;gap:12px;min-height:36px;padding:6px 12px;margin:0;border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent)}.schedule-fullscreen-context-line{flex:1 1 auto;min-width:0;margin:0;font-size:13px;font-weight:600;line-height:1.3;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-fullscreen-context{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 20px;font-size:13px;min-width:0}.schedule-fullscreen-item{white-space:nowrap}.schedule-fullscreen-exit{flex-shrink:0;margin-left:auto;padding:5px 10px;font-size:12px}.schedule-fullscreen .schedule-view-toolbar{margin:0;padding:4px 12px 6px;border:none;border-radius:0;background:transparent}.schedule-fullscreen .schedule-view-toolbar--compact .schedule-view-toolbar-header{display:none}.schedule-fullscreen .schedule-table-toolbar{flex-wrap:nowrap;gap:10px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.schedule-fullscreen .schedule-segment-btn{padding:4px 10px;font-size:12px}.schedule-fullscreen-help{margin-left:auto;flex-shrink:0;font-size:12px;color:var(--muted)}.schedule-notes{margin:0 0 10px;font-size:12px;color:var(--muted)}.schedule-notes>summary{cursor:pointer;list-style:none;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content;padding:4px 8px;border-radius:6px;border:1px solid transparent}.schedule-notes>summary::-webkit-details-marker{display:none}.schedule-notes>summary:before{content:"ⓘ ";font-size:11px}.schedule-notes>summary:hover{color:var(--text);border-color:var(--border);background:color-mix(in srgb,var(--panel-2) 60%,transparent)}.schedule-notes[open]>summary{color:var(--text);margin-bottom:6px}.schedule-notes .schedule-help-content{margin-top:0}.schedule-fullscreen-help>summary{cursor:pointer;list-style:none;font-weight:600;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:4px 8px;border-radius:6px;border:1px solid transparent}.schedule-fullscreen-help>summary::-webkit-details-marker{display:none}.schedule-fullscreen-help>summary:before{content:"ⓘ ";font-size:11px}.schedule-fullscreen-help>summary:hover{color:var(--text);border-color:var(--border);background:color-mix(in srgb,var(--panel-2) 60%,transparent)}.schedule-fullscreen-help[open]>summary{color:var(--text);margin-bottom:6px}.schedule-help-content{display:grid;grid-gap:8px;gap:8px;max-width:720px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:color-mix(in srgb,var(--panel-2) 50%,var(--panel));font-size:12px;line-height:1.45}.schedule-help-content p{margin:0}.schedule-fullscreen .schedule-table-wrap{flex:1 1;max-height:none;min-height:0;padding-left:12px;padding-right:12px}.schedule-toolbar-control{display:inline-flex;flex-direction:column;align-items:flex-start;gap:5px;flex:0 0 auto;min-width:0}.schedule-toolbar-label{font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0}.schedule-segmented-control{display:inline-flex;gap:2px;padding:3px;background:var(--panel);border:1px solid var(--border);border-radius:9px;flex-shrink:0}.schedule-segment-btn{border:none;background:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;color:var(--muted);padding:6px 12px;border-radius:6px;white-space:nowrap;line-height:1.2}.schedule-segment-btn:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 8%,transparent)}.schedule-segment-btn.active{color:var(--text);background:color-mix(in srgb,var(--accent) 14%,var(--panel));box-shadow:0 1px 2px color-mix(in srgb,var(--text) 8%,transparent)}.schedule-column-groups-legend{margin:0 0 12px;font-size:13px;line-height:1.45;color:var(--muted)}.schedule-table--column-groups--subtle thead th.schedule-col-group-due{background:color-mix(in srgb,#f5e6c8 28%,var(--table-head-bg))}.schedule-table--column-groups--subtle thead th.schedule-col-group-status{background:color-mix(in srgb,#dbeafe 34%,var(--table-head-bg))}.schedule-table--column-groups--subtle tbody td.schedule-col-group-due{background:color-mix(in srgb,#f5e6c8 18%,var(--panel))}.schedule-table--column-groups--subtle tbody td.schedule-col-group-status{background:color-mix(in srgb,#dbeafe 20%,var(--panel))}.schedule-table--column-groups--subtle tfoot td.schedule-col-group-due{background:color-mix(in srgb,#f5e6c8 24%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--subtle tfoot td.schedule-col-group-status{background:color-mix(in srgb,#dbeafe 26%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--strong thead th.schedule-col-group-due{background:color-mix(in srgb,#ffe8b3 58%,var(--table-head-bg))}.schedule-table--column-groups--strong thead th.schedule-col-group-status{background:color-mix(in srgb,#d8e8ff 62%,var(--table-head-bg))}.schedule-table--column-groups--strong tbody td.schedule-col-group-due{background:color-mix(in srgb,#fff1cc 82%,var(--panel))}.schedule-table--column-groups--strong tbody td.schedule-col-group-status{background:color-mix(in srgb,#e3eeff 82%,var(--panel))}.schedule-table--column-groups--strong tfoot td.schedule-col-group-due{background:color-mix(in srgb,#ffe8b3 65%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--strong tfoot td.schedule-col-group-status{background:color-mix(in srgb,#d8e8ff 68%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--strong .schedule-row--penalty>td,.schedule-table--column-groups--subtle .schedule-row--penalty>td{background:color-mix(in srgb,#e5484d 7%,var(--panel))}.schedule-table--column-groups--strong .schedule-row--penalty>td.schedule-due-date-cell,.schedule-table--column-groups--subtle .schedule-row--penalty>td.schedule-due-date-cell{box-shadow:inset 3px 0 0 color-mix(in srgb,#e5484d 55%,transparent)}.schedule-table--column-groups--strong .schedule-row--penalty-paid>td,.schedule-table--column-groups--subtle .schedule-row--penalty-paid>td{background:color-mix(in srgb,var(--warn) 7%,var(--panel))}.schedule-table--column-groups--strong .schedule-row--penalty-paid>td.schedule-due-date-cell,.schedule-table--column-groups--subtle .schedule-row--penalty-paid>td.schedule-due-date-cell{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--warn) 55%,transparent)}.revenue-table.schedule-table{table-layout:auto;min-width:0;width:100%}.revenue-table.schedule-table>tbody>tr>td,.revenue-table.schedule-table>tfoot>tr>td,.revenue-table.schedule-table>tfoot>tr>th,.revenue-table.schedule-table>thead>tr>th{text-align:right;vertical-align:middle;white-space:nowrap}.revenue-table.schedule-table>tbody>tr>td:first-child,.revenue-table.schedule-table>tfoot>tr>td:first-child,.revenue-table.schedule-table>tfoot>tr>th:first-child,.revenue-table.schedule-table>thead>tr>th:first-child{text-align:left}.revenue-table.schedule-table .revenue-col-amt{text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.revenue-table.schedule-table td.revenue-col-actions,.revenue-table.schedule-table td.revenue-col-status,.revenue-table.schedule-table th.revenue-col-actions,.revenue-table.schedule-table th.revenue-col-status{text-align:center}.revenue-table.schedule-table td.revenue-col-status .revenue-status-expand{justify-content:center}.revenue-status-badges{display:inline-flex;gap:6px;flex-wrap:wrap;justify-content:center}.revenue-activity-notes{margin:8px 0 4px 12px;max-width:42rem;text-align:left}.revenue-activity-notes-item+.revenue-activity-notes-item{margin-top:10px}.revenue-activity-notes-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.revenue-activity-notes-reason{margin:4px 0 2px;white-space:pre-wrap}.revenue-activity-notes-meta{margin:0;color:var(--muted);font-size:12px}.rr-review-actions,.rr-review-month-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px}.revenue-recognition-report-table td.num,.revenue-recognition-report-table th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.revenue-recognition-report-table td.col-center,.revenue-recognition-report-table th.col-center{text-align:center}.rr-report-table-scroll{position:relative}.rr-report-table-wrap{max-height:min(70vh,calc(100dvh - var(--site-header-offset, 4rem) - 12rem));overflow:auto;-webkit-overflow-scrolling:touch}.rr-report-table-wrap .data-table-sticky-head thead th{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:var(--table-head-bg);box-shadow:0 2px 0 var(--table-head-border)}.rr-report-table-wrap .data-table-sticky-head tfoot th{position:-webkit-sticky;position:sticky;bottom:0;z-index:4;background:var(--table-head-bg);box-shadow:0 -1px 0 var(--table-head-border)}.rr-loan-cell{display:inline-flex;align-items:center;gap:6px;max-width:100%}.info-tip-popover.rr-row-tip{max-height:min(70vh,480px);overflow-y:auto;width:min(340px,calc(100vw - 24px))!important;padding:10px 12px 12px;white-space:normal}.rr-row-tip-body{gap:8px}.rr-row-tip-body,.rr-row-tip-head{display:flex;flex-direction:column}.rr-row-tip-head{gap:2px;padding-bottom:6px;border-bottom:1px solid color-mix(in srgb,var(--panel) 28%,transparent);font-size:12px;line-height:1.35}.rr-row-tip-sub{opacity:.82;font-size:11px}.rr-row-tip-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.35}.rr-row-tip-table td,.rr-row-tip-table th{padding:3px 0;vertical-align:top}.rr-row-tip-table th{width:58%;padding-right:10px;font-weight:500;text-align:left;opacity:.82}.rr-row-tip-table td{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.rr-row-tip-table td.is-strong{font-weight:700}.rr-row-tip-flags{margin:2px 0 0;padding-top:6px;border-top:1px solid color-mix(in srgb,var(--panel) 28%,transparent);font-size:11px;opacity:.82}.revenue-decision-amounts{width:100%;margin:12px 0;border-collapse:collapse}.revenue-decision-amounts td,.revenue-decision-amounts th{padding:6px 8px;border-bottom:1px solid var(--border);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.revenue-decision-amounts thead th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:right}.revenue-decision-amounts thead th:first-child{text-align:left}.revenue-decision-amounts tbody th{text-align:left;font-weight:500;color:var(--muted)}.revenue-decision-amounts tbody td{text-align:right}.revenue-decision-amounts tbody td input[type=number]{width:7.5rem;margin:0;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.revenue-decision-amounts tbody tr:last-child td,.revenue-decision-amounts tbody tr:last-child th{border-bottom:none;padding-top:10px}.revenue-table.schedule-table>thead>tr>th.schedule-col-alloc{white-space:normal;min-width:6.5rem;background-color:color-mix(in srgb,var(--text) 4%,var(--table-head-bg))}.revenue-table.schedule-table>thead>tr>th.schedule-col-alloc.schedule-col-alloc--participant{background-color:color-mix(in srgb,var(--text) 7%,var(--table-head-bg))}.revenue-table.schedule-table td.schedule-col-alloc .participant-due-expand{justify-content:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.revenue-participant-breakdown{width:auto;min-width:22rem;margin:4px 0 4px 12px;border-collapse:collapse;font-size:12.5px}.revenue-participant-breakdown td,.revenue-participant-breakdown th{padding:4px 12px 4px 0;text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.revenue-participant-breakdown th{color:var(--muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.revenue-participant-breakdown td:first-child,.revenue-participant-breakdown th:first-child{text-align:left;min-width:10rem}.revenue-table-wrap{position:relative;padding-left:16px;padding-right:16px;box-sizing:border-box}.schedule-fullscreen .revenue-table-wrap{flex:1 1;min-height:0;max-height:none;overflow-y:auto;padding-left:12px;padding-right:12px}.schedule-fullscreen .revenue-table-wrap .data-table-sticky-head thead th{position:-webkit-sticky;position:sticky;top:0;z-index:6;box-shadow:0 2px 0 var(--table-head-border)}.revenue-table.schedule-table>tbody>tr.schedule-row--business-date>td{padding-top:22px;vertical-align:bottom;background:color-mix(in srgb,var(--warn) 9%,var(--panel))}.revenue-table.schedule-table>tbody>tr>td.revenue-col-month--business{position:relative}.revenue-table.schedule-table td.revenue-col-month--business .schedule-business-date-badge{left:0;transform:none}.revenue-table.schedule-table tfoot th{font-weight:700;background:color-mix(in srgb,var(--accent) 8%,var(--panel));border-top:2px solid var(--border)}.revenue-table.schedule-table.gridlines tfoot th{border:1px solid var(--border);border-top:2px solid var(--border)}.schedule-table--column-groups--subtle tfoot th.schedule-col-group-due{background:color-mix(in srgb,#f5e6c8 24%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--subtle tfoot th.schedule-col-group-status{background:color-mix(in srgb,#dbeafe 26%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--strong tfoot th.schedule-col-group-due{background:color-mix(in srgb,#ffe8b3 65%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.schedule-table--column-groups--strong tfoot th.schedule-col-group-status{background:color-mix(in srgb,#d8e8ff 68%,color-mix(in srgb,var(--accent) 8%,var(--panel)))}.fee-calc-table .fee-calc-loan-separator td{padding:0;height:0;line-height:0;border:none;border-top:3px solid var(--border,#94a3b8);background:transparent}.fee-calc-table .fee-calc-loan-header td{text-align:left!important;font-weight:600;font-size:.95rem;padding:10px 12px;background:var(--surface-raised,#f1f5f9);border-bottom:1px solid var(--border,#cbd5e1)}.fee-calc-table .fee-calc-loan-header-meta{margin-left:8px;font-weight:400;font-size:.88rem}.fee-calc-table .fee-calc-period-row td.fee-calc-loan-ref{font-size:.88rem}html[data-theme=dark] .fee-calc-table .fee-calc-loan-header td{background:rgba(255,255,255,.06)}html[data-theme=dark] .fee-calc-table .fee-calc-loan-separator td{border-top-color:rgba(255,255,255,.22)}.fee-calc-results-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}.fee-calc-scope-fieldset{border:none;padding:0;margin:0 0 16px}.fee-calc-scope-legend{font-size:.88rem;color:var(--muted);margin-bottom:8px;padding:0}.fee-calc-scope-option{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:8px;border:1px solid var(--border,#cbd5e1);border-radius:8px;cursor:pointer;font-size:.95rem;transition:border-color .15s,background .15s}.fee-calc-scope-option:last-of-type{margin-bottom:0}.fee-calc-scope-option input[type=radio]{margin:0;flex-shrink:0;width:16px;height:16px;accent-color:var(--accent)}.fee-calc-scope-option.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.fee-calc-threshold-fieldset{border:none;padding:0;margin:0 0 16px}.fee-calc-threshold-hint{font-size:.88rem;margin-bottom:10px}.fee-calc-threshold-row{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-end}.fee-calc-threshold-field{display:flex;flex-direction:column;gap:6px;min-width:140px}.fee-calc-threshold-label{font-size:.88rem;color:var(--muted)}.fee-calc-threshold-amount,.fee-calc-threshold-unit{padding:8px 10px;border:1px solid var(--border,#cbd5e1);border-radius:6px;font:inherit;font-size:.92rem;background:var(--card,#fff);color:var(--text)}.fee-calc-threshold-amount{width:5.5rem}.fee-calc-loan-picker{margin:16px 0;border:1px solid var(--border,#cbd5e1);border-radius:8px;overflow:hidden;background:var(--card,#fff)}.fee-calc-loan-picker-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border,#e2e8f0);background:var(--surface-raised,#f8fafc)}.fee-calc-loan-search{flex:1 1 200px;min-width:0;padding:8px 10px;border:1px solid var(--border,#cbd5e1);border-radius:6px;font:inherit;font-size:.92rem}.fee-calc-loan-picker-actions{display:flex;gap:8px;flex-shrink:0}.btn-sm{padding:6px 12px;font-size:.85rem}.fee-calc-selection-count{margin:0;padding:8px 12px 0;font-size:.88rem}.fee-calc-loan-list{max-height:280px;overflow-y:auto;margin-top:4px}.fee-calc-loan-list-empty{margin:0;padding:16px 12px}.fee-calc-loan-row{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:0;border-bottom:1px solid var(--border,#e2e8f0);cursor:pointer;font-size:.92rem;transition:background .12s}.fee-calc-loan-row:last-child{border-bottom:none}.fee-calc-loan-row:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.fee-calc-loan-row.is-checked{background:color-mix(in srgb,var(--accent) 10%,transparent)}.fee-calc-loan-row input[type=checkbox]{margin:0;flex-shrink:0;width:16px;height:16px;accent-color:var(--accent)}.fee-calc-loan-row-label{flex:1 1;min-width:0;line-height:1.35}.fee-calc-run-hint{margin:16px 0 8px;font-size:.9rem}.fee-calc-run-status{margin-top:12px}.fee-calc-results-loading{margin-top:16px}.fee-calc-validation{margin:0 0 10px;font-size:.9rem;color:#b45309}html[data-theme=dark] .fee-calc-loan-picker-toolbar{background:rgba(255,255,255,.04)}html[data-theme=dark] .fee-calc-loan-row.is-checked,html[data-theme=dark] .fee-calc-scope-option.is-selected{background:rgba(91,141,239,.12)}.fee-report-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:4px}.fee-report-bulk-bar{position:-webkit-sticky;position:sticky;bottom:0;z-index:4;margin-top:16px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:0 -8px 24px color-mix(in srgb,var(--text) 8%,transparent)}.fee-report-bulk-bar-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px}.fee-report-bulk-bar-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.fee-report-bulk-progress,.fee-report-bulk-result{margin:8px 0 0;white-space:pre-wrap;font:inherit}.fee-report-bulk-reject{margin-top:10px}.fee-report-hidden-sibling{margin:0;padding:8px 14px;border-bottom:1px solid var(--border);font-size:13px}.fee-report-filters{display:flex;flex-wrap:wrap;gap:4px 12px;padding:6px 10px;margin-top:6px;border:1px dashed color-mix(in srgb,var(--border) 85%,transparent);border-radius:6px;background:transparent}.fee-report-filter{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);cursor:pointer}.fee-report-filter input[type=checkbox]{width:14px;height:14px;margin:0}.fee-report-approval-message{margin:0 0 10px;padding:10px 12px;border-radius:8px;font-size:14px;background:color-mix(in srgb,var(--good) 12%,var(--panel));color:var(--text);border:1px solid color-mix(in srgb,var(--good) 35%,var(--border))}.fee-report-approval-message.error{background:color-mix(in srgb,#e5484d 10%,var(--panel));border-color:color-mix(in srgb,#e5484d 35%,var(--border));color:var(--text)}.report-filter-card{display:flex;flex-direction:column;gap:0}.report-filter-fieldset{border:none;margin:0;padding:0}.report-filter-fieldset+.report-filter-fieldset{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.report-filter-legend{display:block;width:100%;margin:0 0 8px;padding:0;font-size:13px;font-weight:600;color:var(--muted)}.report-filter-date-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.report-filter-date-label{display:flex;flex-direction:column;gap:4px;margin:0;font-size:14px}.report-filter-submit{margin:0}.report-checkbox-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.report-checkbox-label{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:14px;line-height:1.3;cursor:pointer;white-space:nowrap}.report-checkbox-label input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0}.report-filter-hint{margin:6px 0 0}.cra-results{display:flex;flex-direction:column;gap:16px}.cra-dq-banner{margin:0;padding:12px 16px;font-size:.92rem;line-height:1.45;background:color-mix(in srgb,var(--warn) 8%,var(--panel));border-color:color-mix(in srgb,var(--warn) 35%,var(--border))}.cra-summary-bar{margin:0}.cra-bucket-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}@media (max-width:960px){.cra-bucket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.cra-bucket-grid{grid-template-columns:1fr}}.cra-bucket-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0;padding:14px 16px;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.cra-bucket-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.cra-bucket-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cra-bucket-card.is-expanded{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}.cra-bucket-card--attention{border-color:color-mix(in srgb,var(--warn) 40%,var(--border));background:color-mix(in srgb,var(--warn) 5%,var(--panel))}.cra-bucket-card--attention.is-expanded{border-color:color-mix(in srgb,var(--warn) 55%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--warn) 28%,transparent)}.cra-bucket-card-label{font-size:.95rem;font-weight:700;line-height:1.3}.cra-bucket-card-op{font-weight:600;color:var(--muted)}.cra-bucket-card-count{font-size:.88rem;color:var(--muted)}.cra-bucket-card-remaining{font-size:1.05rem;font-weight:700;margin-top:4px}.cra-bucket-section{margin:0}.cra-bucket-section-title{margin:0 0 12px;font-size:1.05rem}.cra-bucket-section-meta{font-size:.9rem;font-weight:500}.cra-aging-table td:nth-child(-n+5),.cra-aging-table th:nth-child(-n+5){text-align:left}.cra-aging-table td:nth-child(n+6),.cra-aging-table th:nth-child(n+6){text-align:center}.rr-result-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:8px}.rr-result-head h4{margin:0}.rr-loan-filter-label{display:flex;flex-direction:column;margin-bottom:0;flex:1 1 260px;min-width:220px;max-width:420px;font-size:14px}.rr-loan-filter{position:relative}.rr-loan-filter-trigger{display:flex;align-items:center;width:100%;margin-top:5px;min-height:40px;padding:9px 10px;background:var(--field);border:1px solid var(--field-border);color:var(--text);border-radius:8px;font:inherit;font-size:14px;text-align:left;cursor:pointer}.rr-loan-filter-trigger:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.rr-loan-filter-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr-loan-filter-panel{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);min-width:280px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.rr-loan-filter-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-bottom:1px solid var(--border)}.rr-loan-filter-search{flex:1 1 140px;min-width:0;margin-top:0}.rr-loan-filter-actions{display:flex;gap:6px;flex-shrink:0}.rr-loan-filter-count{margin:0;padding:8px 10px 0;font-size:.88rem}.rr-loan-filter-list{max-height:240px;overflow-y:auto;padding:4px 0 8px}.rr-loan-filter-empty{margin:0;padding:12px 10px}.rr-loan-filter-row{display:flex;align-items:center;gap:8px;margin:0;padding:8px 10px;cursor:pointer;font-size:14px}.rr-loan-filter-row.is-checked,.rr-loan-filter-row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.rr-loan-filter-row input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0}.rr-loan-filter-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-tracker-amounts-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px}.payment-tracker-results-card{overflow:hidden}.payment-tracker-table-wrap{margin-top:4px}.payment-tracker-summary{margin:0 0 12px;font-size:14px;color:var(--text);line-height:1.45}.payment-tracker-table-scroll{overflow-x:auto}.h-scroll-cue-viewport.payment-tracker-table-scroll,.payment-tracker-table-scroll{margin:0 -4px;padding:0 4px 2px}.h-scroll-cue-viewport.fee-report-loan-table-wrap{border-radius:0 0 10px 10px}.payment-tracker-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.35}.payment-tracker-table thead th{padding:10px;text-align:left;font-size:11px;font-weight:700;color:color-mix(in srgb,var(--text) 82%,var(--muted));text-transform:uppercase;letter-spacing:.05em;background:var(--table-head-bg);border-bottom:2px solid var(--table-head-border);white-space:nowrap;vertical-align:bottom}.payment-tracker-table tbody td{padding:9px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.payment-tracker-desktop{display:block}.payment-tracker-cards{display:none}.payment-tracker-table.installments-table{width:100%;table-layout:fixed}.payment-tracker-table.installments-table td,.payment-tracker-table.installments-table th{min-width:0;overflow-wrap:anywhere;padding:9px 8px;vertical-align:middle}.payment-tracker-table.installments-table thead th{padding:10px 8px;text-align:left;font-size:11px;font-weight:700;color:color-mix(in srgb,var(--text) 82%,var(--muted));text-transform:uppercase;letter-spacing:.05em;background:var(--table-head-bg);border-bottom:2px solid var(--table-head-border);white-space:normal;vertical-align:bottom}.payment-tracker-table.installments-table tbody td{border-bottom:1px solid var(--border)}.payment-tracker-table.installments-table tbody tr.payment-tracker-row{transition:background-color .12s ease}.payment-tracker-table.installments-table tbody tr.payment-tracker-row:hover{background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.payment-tracker-row-open{background:color-mix(in srgb,var(--warn) 8%,var(--panel));box-shadow:inset 3px 0 0 color-mix(in srgb,var(--warn) 70%,transparent)}.payment-tracker-row-open:hover{background:color-mix(in srgb,var(--warn) 12%,var(--panel))}.payment-tracker-row-paid,.payment-tracker-row-paid .payment-tracker-remaining{color:var(--muted)}.payment-tracker-col-expand{width:2.25rem;text-align:center}.payment-tracker-expand{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);font-size:14px;line-height:1;cursor:pointer}.payment-tracker-expand:hover{color:var(--accent);border-color:var(--border);background:var(--panel-2)}.payment-tracker-col-date{width:7.5rem;white-space:nowrap}.payment-tracker-col-loan{width:8rem}.payment-tracker-loan-link{font-weight:600;overflow-wrap:anywhere;word-break:break-word}.payment-tracker-col-borrower{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.payment-tracker-col-money{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.payment-tracker-table.installments-table thead .payment-tracker-col-money{text-align:right}.payment-tracker-col-method{white-space:normal;overflow-wrap:anywhere}.payment-tracker-col-status{width:7rem}.payment-tracker-col-action{width:6.5rem;white-space:nowrap}.payment-tracker-method-badge{font-size:11px;font-weight:600;text-transform:none;letter-spacing:normal;white-space:normal}.payment-tracker-not-paid{font-size:12px}.payment-tracker-remaining{font-weight:600;color:var(--text)}.payment-tracker-row-open .payment-tracker-remaining{color:color-mix(in srgb,var(--warn) 85%,var(--text))}.payment-tracker-details-row>td{padding:0 8px 12px;background:color-mix(in srgb,var(--panel-2) 70%,var(--panel));border-bottom:1px solid var(--border)}.payment-tracker-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:10px 16px;gap:10px 16px;margin:10px 0 4px;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--panel)}.payment-tracker-details-grid>div{display:flex;flex-direction:column;gap:2px;min-width:0}.payment-tracker-details-grid dt{margin:0;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.payment-tracker-details-grid dd{margin:0;font-size:13px;font-weight:600}.payment-tracker-details-span{grid-column:span 2}.payment-tracker-card{border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--panel)}.payment-tracker-card+.payment-tracker-card{margin-top:10px}.payment-tracker-card-head{display:flex;align-items:flex-start;gap:8px}.payment-tracker-card-title{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.payment-tracker-card-borrower{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.payment-tracker-card-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:10px}.payment-tracker-card-metrics>div{display:flex;flex-direction:column;gap:2px;min-width:0}.payment-tracker-card-metrics .muted{font-size:11px}.payment-tracker-card-metrics strong{font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.payment-tracker-card-details{margin-top:10px}.payment-tracker-card-action{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-subtle)}@media (max-width:1200px){.payment-tracker-table.installments-table .payment-tracker-col-detail{display:none}}@media (max-width:900px){.payment-tracker-desktop{display:none}.payment-tracker-cards{display:block}}.fee-report-borrower-header td{background:color-mix(in srgb,var(--accent) 10%,var(--panel));border-bottom:1px solid var(--border);font-size:15px;padding-top:12px;padding-bottom:12px}.fee-report-borrower-separator td{padding:0;height:10px;border:none;background:transparent}.fee-report-by-loan{margin-top:12px}.fee-report-borrower-section,.fee-report-by-loan{display:flex;flex-direction:column;gap:12px}.fee-report-borrower-header-bar{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--panel));border:1px solid var(--border);font-size:15px}.fee-report-borrower-header-bar--spaced{margin-top:4px}.fee-report-loan-group{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.fee-report-loan-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;padding:12px 18px 12px 14px;background:var(--panel-2);border-bottom:1px solid var(--border);border-radius:10px 10px 0 0}.fee-report-loan-group-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;min-width:0;font-weight:600;font-size:.95rem;line-height:1.4}.fee-report-loan-group-title a{font-weight:700;white-space:nowrap}.fee-report-loan-group-sep{color:var(--muted);font-weight:400}.fee-report-loan-group-borrower{color:var(--text);font-weight:600}.fee-report-loan-group-fee-count{font-weight:500;font-size:.88rem}.fee-report-loan-group-total{font-size:.88rem;color:var(--muted);white-space:nowrap}.fee-report-loan-group-total strong{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text)}.fee-report-loan-group-rates{font-weight:500;font-size:.88rem}.fee-report-loan-group-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0;padding-right:2px}.fee-report-approval-status{margin:0;padding:8px 14px;border-bottom:1px solid var(--border);font-size:13px}.fee-report-loan-selection-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--panel);font-size:12px}.fee-report-col-select{width:4.5rem;text-align:center!important;white-space:nowrap}.fee-report-assessment-select{display:inline-flex;align-items:center;justify-content:center;margin:0;cursor:pointer}.fee-report-assessment-select input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent)}.fee-report-loan-group .fee-report-table tbody td.fee-report-col-select{vertical-align:middle;background:inherit}.fee-report-loan-reject-box{margin:0;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--panel)}.fee-report-reject-scope{margin:0 0 10px;font-size:.88rem;line-height:1.45}.fee-report-reject-label{display:block;margin-bottom:6px;font-size:.88rem}.fee-report-reject-textarea{width:100%;max-width:480px;display:block}.fee-report-reject-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.fee-report-loan-table-wrap{overflow-x:auto;border-radius:0 0 10px 10px}.fee-report-loan-group .fee-report-table{margin:0;width:100%;border:none;border-radius:0;border-collapse:separate;border-spacing:0}.fee-report-loan-group .fee-report-table thead th{position:static;top:auto;z-index:auto;box-shadow:none;background:var(--table-head-bg);border-top:none;border-bottom:2px solid var(--table-head-border);padding-top:10px;padding-bottom:10px;font-weight:700;color:color-mix(in srgb,var(--text) 82%,var(--muted))}.fee-report-loan-group .fee-report-table tbody td{vertical-align:middle}.fee-report-loan-group .fee-report-table tbody tr+tr td{border-top:1px solid var(--border)}.fee-report-row--default td,.fee-report-row--late td,.fee-report-row--regular td{background:var(--panel)}.fee-report-row--late>td:first-child{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--warn) 40%,transparent)}.fee-report-row--default>td:first-child{box-shadow:inset 3px 0 0 color-mix(in srgb,#c2410c 65%,var(--warn))}.fee-report-row--pending td{background:color-mix(in srgb,var(--warn) 8%,var(--panel))}[data-theme=dark] .fee-report-row--pending td{background:color-mix(in srgb,var(--warn) 12%,var(--panel))}.fee-report-row--rejected td{background:var(--panel)}.fee-report-row--rejected>td:first-child{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--muted) 45%,transparent)}.fee-report-row--rejected .fee-report-amt{color:var(--muted);font-weight:600;text-decoration:line-through}.badge.fee-rejected{color:var(--muted);border-color:color-mix(in srgb,var(--muted) 55%,var(--border));background:color-mix(in srgb,var(--muted) 10%,var(--panel))}.badge.fee-adjusted{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.fee-report-row--adjusted td{background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.fee-report-row--adjusted>td:first-child{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--accent) 55%,transparent)}.fee-report-amt-calculated{display:block;color:var(--muted);font-size:.78rem;font-weight:500;white-space:nowrap}.fee-report-table.schedule-table{table-layout:auto;min-width:0}.fee-report-table .fee-report-col-overdue,.fee-report-table .fee-report-col-seq{width:1%;white-space:nowrap;text-align:right}.fee-report-table .fee-report-col-actions,.fee-report-table .fee-report-col-amount,.fee-report-table .fee-report-col-due,.fee-report-table .fee-report-col-status,.fee-report-table .fee-report-col-type{width:1%;white-space:nowrap}.fee-report-table .fee-report-col-amount{text-align:right}.fee-report-table .fee-report-col-notes{width:auto;max-width:0;color:var(--muted);font-size:.88rem;text-align:left}.fee-report-table .fee-report-col-actions{text-align:right}.fee-report-note-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fee-report-note-details{display:block;font-size:.82rem}.fee-report-note-details .interest-info-trigger{padding:0;font-size:.82rem}.fee-report-row-actions{display:inline-flex;align-items:center;gap:6px}.fee-row-actions-trigger{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);font-size:15px;line-height:1;cursor:pointer}.fee-row-actions-trigger:hover:not(:disabled),.fee-row-actions-trigger[aria-expanded=true]{border-color:var(--border);background:var(--panel-2);color:var(--text)}.fee-row-actions-trigger:disabled{opacity:.5;cursor:default}.fee-report-detail-list{display:grid;grid-gap:6px;gap:6px;margin:0}.fee-report-detail-list>div{display:flex;justify-content:space-between;gap:12px}.fee-report-detail-list dt{color:var(--muted);font-size:12px}.fee-report-detail-list dd{margin:0;font-size:12px;font-weight:600;text-align:right}.penalty-adjust-box{margin:10px 0}.penalty-adjust-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.penalty-adjust-table{margin:0 0 10px}.penalty-adjust-input{width:8.5rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.penalty-adjust-cap{margin-left:8px;font-size:.82rem;white-space:nowrap}.penalty-adjust-fields{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}.penalty-adjust-field{display:flex;flex-direction:column;gap:4px;min-width:14rem}.penalty-adjust-field--wide{flex:1 1 22rem}.penalty-adjust-summary{margin:0 0 10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fee-report-amt{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fee-report-amt--regular{color:var(--text)}.fee-report-amt--late{color:color-mix(in srgb,var(--warn) 80%,var(--text))}.fee-report-amt--default{color:#c2410c;font-weight:800}[data-theme=dark] .fee-report-amt--default{color:var(--warn)}.schedule-business-date-legend,.schedule-segment-legend{margin:0 0 10px;font-size:13px}.schedule-segment-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;color:var(--muted)}.schedule-segment-legend-label{font-weight:600;color:var(--text)}.schedule-segment-legend-item{display:inline-flex;align-items:center;gap:6px}.schedule-segment-legend-swatch{display:inline-block;width:4px;height:14px;border-radius:2px;flex-shrink:0}.schedule-segment-legend-item--original .schedule-segment-legend-swatch{background:color-mix(in srgb,#94a3b8 85%,transparent)}.schedule-segment-legend-item--ext-1 .schedule-segment-legend-swatch{background:color-mix(in srgb,#3b82f6 90%,transparent)}.schedule-segment-legend-item--ext-2 .schedule-segment-legend-swatch{background:color-mix(in srgb,#8b5cf6 90%,transparent)}.schedule-segment-legend-item--ext-3 .schedule-segment-legend-swatch{background:color-mix(in srgb,#14b8a6 90%,transparent)}.schedule-segment-legend-item--ext-4 .schedule-segment-legend-swatch{background:color-mix(in srgb,#f59e0b 90%,transparent)}.schedule-segment-legend-item--ext-5 .schedule-segment-legend-swatch{background:color-mix(in srgb,#f43f5e 90%,transparent)}.schedule-segment-legend-item--ext-6 .schedule-segment-legend-swatch{background:color-mix(in srgb,#6366f1 90%,transparent)}.schedule-segment-legend-item--post-maturity .schedule-segment-legend-swatch{background:color-mix(in srgb,#e5484d 90%,transparent)}.schedule-table-wrap{position:relative;width:100%;max-width:100%;overflow-x:auto;overflow-y:auto;max-height:min(72vh,900px);-webkit-overflow-scrolling:touch;padding-left:16px;padding-right:16px;box-sizing:border-box}.schedule-table-wrap .schedule-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:6}.schedule-table-wrap.is-scrolled .schedule-table thead th{box-shadow:0 2px 4px color-mix(in srgb,var(--text) 14%,transparent)}.schedule-table thead th.schedule-th-group{box-sizing:border-box;height:24px;padding-top:3px;padding-bottom:3px;text-align:center;vertical-align:middle;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--table-head-border)}.schedule-table-wrap .schedule-table thead th.schedule-th-sub{top:24px}.schedule-table--participant-allocation{min-width:1360px}.schedule-table--participant-allocation th.schedule-th-group{width:24rem}.schedule-table td.schedule-col-alloc,.schedule-table th.schedule-col-alloc,.schedule-table th.schedule-th-group{background-color:color-mix(in srgb,var(--text) 4%,transparent)}.schedule-table td.schedule-col-alloc--participant{background-color:color-mix(in srgb,var(--text) 7%,transparent);font-weight:600}.schedule-table td.schedule-col-alloc--first,.schedule-table th.schedule-col-alloc--first,.schedule-table th.schedule-th-group{border-left:1px solid var(--table-head-border)}.schedule-table td.schedule-col-alloc--last,.schedule-table th.schedule-col-alloc--last,.schedule-table th.schedule-th-group{border-right:1px solid var(--table-head-border)}.schedule-table th.schedule-th-group{background-color:color-mix(in srgb,var(--text) 8%,transparent)}.schedule-table-wrap .schedule-table thead th.schedule-th-group{background-color:color-mix(in srgb,var(--text) 8%,var(--table-head-bg))}.schedule-table-wrap .schedule-table thead th.schedule-col-alloc{background-color:color-mix(in srgb,var(--text) 4%,var(--table-head-bg))}.schedule-table-wrap .schedule-table thead th.schedule-col-alloc--participant{background-color:color-mix(in srgb,var(--text) 7%,var(--table-head-bg))}.schedule-participant-alloc-note{margin:8px 0 0;font-size:12.5px}.schedule-drift-notice{background:var(--warn-bg,#fff8e6);margin-bottom:12px;padding:10px 14px}.schedule-drift-notice>summary{cursor:pointer;list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.schedule-drift-notice>summary::-webkit-details-marker{display:none}.schedule-drift-notice>summary:before{content:"▸";display:inline-block;flex-shrink:0;transition:transform .15s ease}.schedule-drift-notice[open]>summary:before{transform:rotate(90deg)}.schedule-drift-notice-list{margin-top:12px;display:flex;flex-direction:column;gap:12px}.payments-table-toolbar{margin:0 0 10px;padding:0;background:transparent;border:0;box-shadow:none}.payments-table-toolbar .schedule-table-toolbar{margin:0}.payments-table--compact .payments-col-center{text-align:center;vertical-align:middle}.schedule-totals-summary{margin:0 0 10px;font-size:13px;line-height:1.45;color:var(--muted)}.schedule-totals-summary-label{font-weight:600;color:var(--text)}.interest-info-trigger{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;font:inherit;color:inherit;cursor:help}.interest-info-trigger .interest-info-amount{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:2px;-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 55%,transparent);text-decoration-color:color-mix(in srgb,var(--accent) 55%,transparent)}.interest-info-icon{flex:none;color:color-mix(in srgb,var(--accent) 70%,var(--muted));opacity:.85}.interest-info-trigger:focus-visible .interest-info-icon,.interest-info-trigger:hover .interest-info-icon{opacity:1}.interest-info-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.interest-info-popover{position:fixed;z-index:1500;width:300px;max-width:calc(100vw - 16px);padding:12px 14px;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.22);font-size:12.5px;line-height:1.5}.interest-info-title{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}.interest-info-group{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.interest-info-group:first-of-type{border-top:0;padding-top:0}.interest-info-group--result{padding-bottom:0;font-weight:700}.interest-info-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.interest-info-label{color:var(--muted)}.interest-info-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;text-align:right;white-space:nowrap}.interest-info-value--participant{color:var(--semantic-danger)}.interest-info-value--lender{color:var(--good)}.interest-info-value--underbilled{color:var(--warn,#b45309)}.interest-info-popover--wide{width:320px}.interest-info-popover--formula{width:360px}.interest-info-popover--breakdown{width:420px;max-height:min(70vh,560px);overflow-y:auto}.interest-info-breakdown-title{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.interest-info-segment{padding:4px 0}.interest-info-row--wrap{align-items:flex-start}.interest-info-row--wrap .interest-info-label{white-space:normal}.interest-info-row--wrap .interest-info-value{flex-shrink:0}.interest-info-event{margin:4px 0 8px}.interest-info-event,.interest-info-note{color:var(--muted);font-size:11.5px;line-height:1.45}.interest-info-note{margin:0 0 4px}.interest-info-participant{font-weight:700;margin-bottom:4px}.interest-info-row--formula{align-items:flex-start}.interest-info-formula{white-space:normal;font-weight:600;font-size:11.5px}.schedule-table tfoot .schedule-totals-row td{font-weight:700;background:color-mix(in srgb,var(--accent) 8%,var(--panel));border-top:2px solid var(--border);border-bottom:none;vertical-align:middle}.schedule-table.gridlines tfoot .schedule-totals-row td{border:1px solid var(--border);border-top:2px solid var(--border)}.schedule-totals-label{text-align:left!important;white-space:nowrap;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.schedule-totals-row>td.schedule-totals-label{overflow:visible;position:relative;z-index:1}.schedule-totals-row td.schedule-col-amt{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.schedule-business-date-arrow{position:absolute;font-size:11px;font-weight:700;color:#c2410c;pointer-events:none;z-index:2;line-height:1}.schedule-business-date-arrow-left{transform:translate(calc(-100% - 4px),-50%);letter-spacing:-.05em}.schedule-business-date-arrow-right{transform:translate(4px,-50%);letter-spacing:-.05em}.schedule-table tbody tr.schedule-row.schedule-row--business-date>td{padding-top:22px;vertical-align:bottom}.schedule-table>tbody>tr>td.schedule-due-date-cell--business{position:relative}.schedule-business-date-badge{position:absolute;top:3px;left:50%;transform:translateX(-50%);z-index:3;padding:1px 7px;border-radius:999px;font-size:10px;font-weight:700;color:#c2410c;background:color-mix(in srgb,var(--warn) 14%,var(--panel));border:1px solid color-mix(in srgb,var(--warn) 45%,var(--border));pointer-events:none;white-space:nowrap;line-height:1.3}.schedule-table tbody tr.schedule-row--business-date:not(.schedule-row--penalty):not(.schedule-row--penalty-paid)>td{background:color-mix(in srgb,var(--warn) 9%,var(--panel))}[data-theme=dark] .schedule-business-date-arrow,[data-theme=dark] .schedule-business-date-badge{color:var(--warn)}[data-theme=dark] .schedule-business-date-badge{background:color-mix(in srgb,var(--warn) 18%,var(--panel));border-color:color-mix(in srgb,var(--warn) 40%,var(--border))}.progress-bar{width:100%;height:8px;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border-subtle);overflow:hidden}.progress-bar-fill{height:100%;border-radius:999px;background:var(--good);transition:width .3s ease}.btn-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:999px;cursor:pointer;transition:background .15s,color .15s}.btn-pill:hover:not(:disabled){background:var(--accent);color:#fff}.export-btn-wrap{display:inline-flex}.export-btn-wrap:has(.btn-pill:disabled){cursor:not-allowed}.btn-pill:disabled{color:var(--muted);border-color:var(--border);background:transparent;cursor:not-allowed;opacity:.6;pointer-events:none}.btn-pill span{font-size:16px;line-height:1}.loan-form-layout{--loan-form-col-gap:16px;--loan-form-row-gap:18px;--loan-form-row-gap-lg:24px;--loan-form-label-to-control:7px;--loan-form-control-to-hint:8px;--loan-form-section-gap:22px;display:grid;grid-template-columns:1fr;grid-gap:18px;gap:18px;align-items:start}.loan-form-layout .card{padding:20px 22px;margin-bottom:18px}.loan-form-layout form label{display:block;font-size:13px;color:var(--muted);margin-bottom:14px}.loan-form-layout form label>.searchable-select,.loan-form-layout form label>.us-state-select,.loan-form-layout form label>input,.loan-form-layout form label>select,.loan-form-layout form label>textarea{margin-top:var(--loan-form-label-to-control)}.loan-form-layout form label>.searchable-select>input,.loan-form-layout form label>.us-state-select>input{margin-top:0}.loan-form-layout form .row{display:flex;gap:var(--loan-form-col-gap);margin-bottom:var(--loan-form-row-gap);align-items:start}.loan-form-layout form .row label{flex:1 1;margin-bottom:0}.loan-form-layout .field-hint{margin-top:var(--loan-form-control-to-hint)}#terms .row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--loan-form-col-gap);gap:var(--loan-form-col-gap);margin-bottom:var(--loan-form-row-gap)}#terms .row+.row{margin-top:8px}#terms .loan-dates-group{margin-top:var(--loan-form-section-gap)}#terms .row>.loan-purpose-fieldset,#terms .row>label{flex:unset;margin-bottom:0}.loan-form-layout .field-label-line{display:inline-flex;flex-wrap:wrap;align-items:center;column-gap:4px;row-gap:2px;max-width:100%;line-height:1.35}.loan-form-layout .field-label-line .tip{margin-left:0;flex-shrink:0}.loan-form-layout .field-label-optional{display:inline-flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;column-gap:4px}.loan-form-layout .field-label-optional .tip{margin-left:0}#terms .loan-purpose-fieldset{margin:0;padding:0;border:none;min-width:0}#terms .loan-purpose-fieldset>legend{float:left;width:100%;padding:0;margin:0 0 var(--loan-form-label-to-control);font-size:13px;color:var(--muted);line-height:1.35}#terms .loan-purpose-fieldset:after{content:"";display:table;clear:both}#terms .loan-purpose-control{display:flex;width:100%;max-width:280px;box-sizing:border-box}#terms .loan-purpose-control .schedule-segment-btn{flex:1 1;text-align:center}@media (max-width:1100px){#terms .row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){#terms .row{grid-template-columns:1fr}}.loan-form-layout form h3{margin:0 0 16px;font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.loan-form-layout #broker .broker-fields{max-width:360px}.loan-form-layout .interest-reserve-group,.loan-form-layout .loan-dates-group,.loan-form-layout .payment-method-group{display:block;box-sizing:border-box;width:100%;margin:var(--loan-form-section-gap) 0 var(--loan-form-row-gap);padding:16px 18px 14px;border:1px solid var(--field-border);border-radius:10px;background:color-mix(in srgb,var(--field) 55%,transparent)}.loan-form-layout .loan-dates-group{max-width:800px}.loan-form-layout .loan-dates-group-title{margin:0 0 14px;font-size:14px;font-weight:600;color:var(--text)}.loan-form-layout .loan-dates-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--loan-form-col-gap);gap:var(--loan-form-col-gap);align-items:start}.loan-form-layout .loan-dates-field{display:flex;flex-direction:column;flex:unset;margin:0;min-width:0}.loan-form-layout .loan-dates-label{display:flex;flex-wrap:wrap;align-items:center;column-gap:4px;row-gap:2px;min-height:3.5em;margin:0 0 var(--loan-form-label-to-control);line-height:1.35;font-size:13px;color:var(--muted)}.loan-form-layout .loan-dates-label .tip{margin-left:0;flex-shrink:0}.loan-form-layout .loan-dates-field input{width:100%;margin-top:0;min-height:40px;box-sizing:border-box}@media (max-width:900px){.loan-form-layout .loan-dates-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-form-layout .loan-dates-label{min-height:0}}.loan-form-layout .interest-reserve-group{max-width:640px}.loan-form-layout .extension-terms-group{max-width:720px}.loan-form-layout .extension-terms-group .interest-reserve-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}@media (max-width:900px){.loan-form-layout .extension-terms-group .interest-reserve-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.loan-form-layout .extension-terms-group .extension-fee-value-field{grid-column:1/-1}}.loan-form-layout #extension-terms .ext-terms-primary{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px 32px;margin-bottom:4px}.loan-form-layout #extension-terms .ext-terms-toggle{display:inline-flex;align-items:center;gap:8px;font-weight:600;cursor:pointer;margin:0;padding-bottom:8px}.loan-form-layout #extension-terms .ext-terms-toggle input{width:auto}.loan-form-layout #extension-terms .ext-terms-count{display:flex;flex-direction:column;gap:5px;margin:0;min-width:160px;max-width:200px;font-size:13px;color:var(--muted)}.loan-form-layout #extension-terms .ext-terms-count input{width:100%;min-height:40px;margin-top:0;box-sizing:border-box}.loan-form-layout .ext-terms-body{margin-top:16px;display:flex;flex-direction:column;gap:16px}.loan-form-layout .ext-terms-mode{border:1px solid var(--border);border-radius:10px;padding:12px 14px;display:flex;flex-wrap:wrap;gap:16px 24px}.loan-form-layout .ext-terms-mode legend{font-size:13px;font-weight:600;padding:0 4px}.loan-form-layout .ext-terms-mode label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.loan-form-layout .ext-terms-mode label input{width:auto}.loan-form-layout .ext-term-block{border:1px solid var(--border);border-radius:12px;padding:16px;background:var(--surface-2,rgba(0,0,0,.02));display:flex;flex-direction:column;gap:12px}.loan-form-layout .ext-term-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.loan-form-layout .ext-term-block-head h4{margin:0;font-size:14px}.loan-form-layout .ext-term-copy{font-size:12px;padding:4px 10px}.loan-form-layout .ext-term-fields{display:grid;grid-template-columns:minmax(110px,1fr) minmax(150px,1.2fr) minmax(180px,1.4fr);grid-gap:12px 16px;gap:12px 16px;align-items:end}.loan-form-layout .ext-term-fields>label{display:flex;flex-direction:column;gap:5px;margin:0;min-width:0;font-size:13px;color:var(--muted)}.loan-form-layout .ext-term-fields input,.loan-form-layout .ext-term-fields select{width:100%;min-height:40px;margin-top:0;box-sizing:border-box}.loan-form-layout .ext-term-rate-type-field{grid-column:1/3}.loan-form-layout .ext-term-approval{display:inline-flex;flex-direction:row;align-items:center;gap:8px;cursor:pointer;margin:0;min-height:40px;color:var(--text);font-size:14px}.loan-form-layout .ext-term-approval input{width:auto}.loan-form-layout .ext-term-rate-grid{flex-wrap:wrap}.loan-form-layout .ext-term-manual-note{margin:4px 0 8px}@media (max-width:900px){.loan-form-layout .ext-term-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-form-layout .ext-term-rate-type-field{grid-column:1/-1}.loan-form-layout .ext-term-approval{grid-column:1/-1;min-height:0}}.loan-form-layout .ext-term-formula{display:flex;flex-direction:column;gap:2px;margin:8px 0 4px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted,rgba(127,127,127,.06))}.loan-form-layout .ext-term-formula-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b7280)}.loan-form-layout .ext-term-formula-value{font-size:14px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.extension-form .extension-rate-rule{margin:4px 0 12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted,rgba(127,127,127,.06))}.extension-form .extension-rate-rule-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.extension-form .ext-term-formula-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b7280)}.extension-form .ext-term-formula-value{font-size:14px;font-weight:600}.extension-form .extension-rate-calc{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.extension-form .extension-rate-calc td{padding:3px 0;font-size:13px}.extension-form .extension-rate-calc td.num{text-align:right;font-weight:600}.extension-form .extension-rate-applied td{border-top:1px solid var(--border);padding-top:6px;font-weight:700}.extension-form .extension-fee-calc{margin:4px 0 12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted,rgba(0,0,0,.03))}.extension-form .extension-fee-calc--error{border-color:var(--danger,#d33);background:rgba(211,51,51,.06)}.extension-form .extension-fee-calc-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted,#666);margin-bottom:8px}.extension-form .extension-fee-calc-table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.extension-form .extension-fee-calc-table td{padding:3px 0;font-size:13px}.extension-form .extension-fee-calc-table td.num{text-align:right;font-weight:600}.extension-form .extension-fee-calc-total td{border-top:1px solid var(--border);padding-top:6px;font-weight:700}.extension-form .extension-fee-calc-dates{display:flex;flex-wrap:wrap;gap:4px 24px;margin:8px 0 0;padding-top:8px;border-top:1px solid var(--border)}.extension-form .extension-fee-calc-dates>div{display:flex;gap:6px;align-items:baseline}.extension-form .extension-fee-calc-dates dt{font-size:12px;color:var(--muted,#666);margin:0}.extension-form .extension-fee-calc-dates dd{font-size:12px;font-weight:600;margin:0}.extension-form .extension-fee-calc-timing{margin:8px 0 0;font-size:12px;color:var(--muted,#666)}.extension-form .extension-fee-calc-error{margin:0;font-size:13px;font-weight:600;color:var(--danger,#d33)}.loan-form-layout .payment-method-group{max-width:360px}.extension-options-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}.extension-option-block{border:1px solid var(--border-subtle);border-radius:8px;padding:10px 12px;background:var(--surface)}.extension-option-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.extension-option-head h4{margin:0;font-size:14px}.extension-option-status{font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px;border:1px solid var(--border)}.extension-option-status.status-available{color:var(--ok,#15803d);border-color:var(--ok,#15803d)}.extension-option-status.status-locked{color:var(--muted-text,#6b7280)}.extension-option-status.status-used{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,var(--border-subtle));background:color-mix(in srgb,var(--good) 8%,var(--surface))}.loan-form-layout .interest-reserve-group-title,.loan-form-layout .payment-method-group-title{margin:0 0 14px;font-size:14px;font-weight:600;color:var(--text)}.loan-form-layout .payment-method-group .payment-method-field{border:none;margin:0;padding:0;min-width:0;width:100%}.loan-form-layout .payment-method-group .payment-method-grid{gap:var(--loan-form-col-gap)}.loan-form-layout .interest-reserve-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:var(--loan-form-col-gap);gap:var(--loan-form-col-gap);align-items:start}.loan-form-layout .interest-reserve-field{display:flex;flex-direction:column;flex:unset;margin:0;min-width:0}.loan-form-layout .interest-reserve-label{display:block;min-height:2.75em;margin:0 0 var(--loan-form-label-to-control);line-height:1.35}.loan-form-layout .interest-reserve-field input,.loan-form-layout .interest-reserve-field select{width:100%;margin-top:0;min-height:40px;box-sizing:border-box}.loan-form-layout .interest-reserve-hint{min-height:1.25em;margin-top:var(--loan-form-control-to-hint)}@media (max-width:640px){.loan-form-layout #broker .broker-fields,.loan-form-layout .interest-reserve-group,.loan-form-layout .loan-dates-group,.loan-form-layout .payment-method-group{max-width:100%}.loan-form-layout .interest-reserve-fields,.loan-form-layout .loan-dates-fields{grid-template-columns:1fr;gap:var(--loan-form-col-gap)}.loan-form-layout .extension-terms-group .interest-reserve-fields{grid-template-columns:1fr}.loan-form-layout .interest-reserve-label{min-height:0}}input,select,textarea{width:100%;margin-top:5px;background:var(--field);border:1px solid var(--field-border);color:var(--text);border-radius:8px;padding:9px 10px;font-size:14px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.loan-form-layout input.loan-id-readonly{background:var(--panel-2,var(--field));color:var(--text);font-weight:600;cursor:default}.loan-form-layout input.loan-id-readonly:focus{border-color:var(--field-border);box-shadow:none}input[type=date]::-webkit-calendar-picker-indicator{filter:var(--picker-filter);cursor:pointer}.theme-toggle-wrap{display:inline-flex;align-items:center;gap:3px;margin:0;padding:2px 4px 2px 5px;border:1px solid transparent;border-radius:6px;cursor:pointer;opacity:.72}.theme-toggle-wrap:hover{opacity:1;border-color:var(--border);background:color-mix(in srgb,var(--panel) 60%,transparent)}.theme-toggle-icon{font-size:11px;line-height:1;opacity:.45}.theme-toggle{width:auto;max-width:64px;margin:0;padding:1px 2px 1px 0;border:none;background:transparent;color:var(--muted);border-radius:0;font-size:11px;font-weight:500;cursor:pointer;white-space:nowrap}.theme-toggle:hover{color:var(--text)}.form-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.loan-form-layout .form-actions{flex-wrap:wrap;gap:10px;align-items:center;margin-top:var(--loan-form-section-gap);padding-top:4px}.repeatable-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 6px}.loan-form-layout .repeatable-head{margin:16px 0 10px}.repeatable-title{font-weight:600;font-size:14px}.repeatable-row{align-items:flex-end}.btn-remove-row{flex:0 0 auto;width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-size:13px;line-height:1;margin-bottom:2px}.btn-remove-row:hover:not(:disabled){border-color:#6b2a32;color:#f3c0c7}.btn-remove-row:disabled{opacity:.4;cursor:not-allowed}.form-error{color:#f3c0c7;background:#2a1419;border:1px solid #6b2a32;border-radius:8px}.form-error,.form-warning{padding:8px 12px;font-size:13px}.form-warning{color:var(--text);background:color-mix(in srgb,var(--warn) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--warn) 45%,var(--border));border-radius:8px}.form-ok{color:#c8f3da;background:#142a1f;border:1px solid #2a6b4d;border-radius:8px;padding:8px 12px}.sim-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}.sim-card:hover{border-color:var(--accent,#5b8def);transform:translateY(-2px)}.sim-go{margin-top:12px;font-size:13px;color:var(--accent,#5b8def);font-weight:600}.sim-result{margin-top:18px}.monthly-due-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:12px}.monthly-due-controls{display:flex;gap:8px;flex-shrink:0}.monthly-due-month{margin-bottom:12px}.monthly-due-month-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:baseline}.monthly-due-inst-row td{font-size:13px}.income-chart{margin-top:8px}.income-cols{display:flex;gap:8px;align-items:flex-end;height:200px}.income-col{flex:1 1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;min-width:0}.income-amt{font-size:10px;color:var(--muted);white-space:nowrap}.income-bar{width:72%;min-height:2px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,#5b8def,#3f5fb2)}.income-col.selected .income-bar{background:linear-gradient(180deg,#3fb27f,#2c7d59)}.income-axis{display:flex;gap:8px;margin-top:6px}.income-x{flex:1 1;text-align:center;font-size:11px;color:var(--muted);white-space:nowrap;min-width:0}.bd-group{border-top:1px solid var(--border);padding-top:14px;margin-top:14px}.bd-group-title{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.bd-group .row{display:flex;gap:10px;align-items:center}.bd-group .row input,.bd-group .row select{margin-top:0}.bd-group .row .btn-primary{white-space:nowrap}.bd-actions,.bd-quicknav{display:flex;flex-wrap:wrap;gap:8px}.bd-quicknav{align-items:center}.bd-nav-btn{min-width:52px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.bd-quicknav-date{font-size:18px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:0 8px;min-width:120px;text-align:center}.bd-quicknav-note{display:block;font-size:12px;margin-top:8px}.form-warn{color:var(--warn);font-size:13px}.field-invalid,.field-invalid:focus{border-color:#e5484d!important;box-shadow:none}.form-ok{color:var(--good);font-size:13px;font-weight:600;margin:0 0 12px}.btn-validate{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;font-size:14px;font-weight:600;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:8px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.btn-validate:hover:not(:disabled){background:var(--accent);color:#fff}.btn-validate.valid,.btn-validate.valid:hover{color:#fff;background:var(--good);border-color:var(--good);cursor:default}.btn-validate:disabled{opacity:.6;cursor:not-allowed}.preview-card .schedule-scroll{max-height:420px;overflow-y:auto;margin-top:12px}.preview-card .schedule-scroll.expanded{max-height:none;overflow-y:visible}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.doc-links{margin:8px 0 0;padding-left:1.25rem}.doc-links a{color:var(--accent);text-decoration:none}.doc-links a:hover{text-decoration:underline}.doc-card{max-width:920px}.about-page-head{margin:0 0 20px}.about-page-head h2{margin:0;font-size:1.7rem;letter-spacing:-.02em}.about-page-intro{margin:6px 0 0;max-width:46rem;font-size:.98rem}.about-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:start;margin-bottom:16px}@media (max-width:960px){.about-top-grid{grid-template-columns:1fr}}.about-card{margin:0 0 16px;padding:18px 20px}.about-top-grid .about-card{margin-bottom:0}.about-collapse-toggle{display:flex;align-items:flex-start;gap:12px;width:100%;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.about-collapse-toggle:hover .about-collapse-caret{color:var(--text)}.about-collapse-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}.about-collapse-heading{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.about-collapse-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.about-card-title{margin:0;font-size:1.05rem;font-weight:700;line-height:1.3}.about-card-subtitle{font-size:.88rem;line-height:1.4;color:var(--muted)}.about-collapse-extra{flex-shrink:0;margin-top:3px;font-size:.78rem;color:var(--muted);white-space:nowrap}.about-collapse-caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-top:1px;color:var(--muted);flex-shrink:0;transition:transform .15s ease}.about-collapse-caret.open{transform:rotate(180deg)}.about-collapse-body{margin-top:14px}.about-collapse-body[hidden]{display:none}.about-env-badge-compact{font-size:10px;padding:2px 8px;letter-spacing:.05em;font-weight:700}.about-field-list{display:flex;flex-direction:column}.about-field{display:grid;grid-template-columns:28px minmax(0,.9fr) minmax(0,1.2fr);align-items:center;grid-gap:10px;gap:10px;min-height:40px;padding:7px 0;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.about-field:first-child{border-top:0;padding-top:2px}.about-field-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,var(--panel-2));color:var(--accent);flex-shrink:0}.about-field-label{font-size:.88rem;font-weight:600;color:var(--text)}.about-field-value{font-size:.9rem;font-weight:500;color:var(--text);text-align:right;word-break:break-word}.about-commit{font-size:.9em;font-weight:600}.about-copy-btn{flex-shrink:0;align-self:flex-start}.about-doc-list{display:flex;flex-direction:column}.about-doc-row{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;grid-gap:12px;gap:12px;padding:12px 4px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);text-decoration:none;color:inherit}.about-doc-row:first-child{border-top:0;padding-top:2px}.about-doc-row:hover{text-decoration:none;background:color-mix(in srgb,var(--accent) 5%,transparent);border-radius:8px}.about-doc-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.about-doc-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.about-doc-row-title{font-weight:700;font-size:.98rem;color:var(--text);line-height:1.3}.about-doc-row-desc{font-size:.86rem;color:var(--muted);line-height:1.4}.about-doc-row-chevron{display:inline-flex;color:var(--muted)}.about-extra{margin-top:8px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.about-extra summary{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;grid-gap:10px;gap:10px;padding:12px 0 2px;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--text);-webkit-user-select:none;-moz-user-select:none;user-select:none;list-style:none}.about-extra summary::-webkit-details-marker{display:none}.about-extra summary:hover{color:var(--accent)}.about-extra-caret{display:inline-flex;color:var(--muted);transition:transform .15s ease}.about-extra[open]>summary .about-extra-caret{transform:rotate(90deg)}.about-extra-body{display:flex;flex-direction:column;padding:4px 0 2px 38px}.about-extra-body .about-field{grid-template-columns:1fr;gap:2px;min-height:0;padding:8px 0}.about-extra-body .about-field-icon{display:none}.about-extra-body .about-field-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.about-extra-body .about-field-value{text-align:left}.about-raw-list{margin:8px 0 0 38px;padding-left:1.1rem;font-size:.86rem;line-height:1.55}.about-confidential{justify-content:center;margin:8px 0 0;font-size:.82rem;color:var(--muted)}.about-confidential,.about-reveal-row{display:flex;align-items:center;gap:8px}.about-reveal-row{flex-wrap:wrap;justify-content:flex-end}@media (max-width:720px){.about-field{grid-template-columns:28px minmax(0,1fr);align-items:start}.about-field-value{grid-column:2;text-align:left}.about-reveal-row{justify-content:flex-start}.about-collapse-extra{white-space:normal;text-align:right;max-width:9rem}.about-extra-body{padding-left:0}.about-raw-list{margin-left:0}}.about-user-id{font-size:.85rem;word-break:break-all;font-weight:500}.about-role-hint{font-weight:400;font-size:.92em}.about-change-subject{font-weight:500;font-size:.88rem;line-height:1.35}.about-footnote{margin:14px 0 0;font-size:.95rem;line-height:1.5}.doc-prose{line-height:1.65;color:var(--text)}.doc-prose h1{font-size:1.75rem;margin:0 0 1rem;line-height:1.25}.doc-prose h2{font-size:1.35rem;margin:2rem 0 .75rem;padding-top:.5rem;border-top:1px solid var(--border)}.doc-prose h2:first-child{border-top:none;padding-top:0;margin-top:0}.doc-prose h3{font-size:1.1rem;margin:1.5rem 0 .5rem}.doc-prose p{margin:0 0 1rem}.doc-prose ol,.doc-prose ul{margin:0 0 1rem;padding-left:1.5rem}.doc-prose li{margin-bottom:.35rem}.doc-prose hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.doc-prose blockquote{margin:0 0 1rem;padding:.75rem 1rem;border-left:3px solid var(--accent);background:var(--panel-2);border-radius:0 6px 6px 0}.doc-prose blockquote p:last-child{margin-bottom:0}.doc-prose pre{margin:0 0 1rem;padding:1rem;overflow-x:auto;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;font-size:.875rem;line-height:1.5}.doc-prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.doc-prose li code,.doc-prose p code,.doc-prose td code{padding:.1em .35em;background:var(--panel-2);border-radius:4px}.doc-table-wrap{overflow-x:auto;margin:0 0 1rem}.doc-table{width:100%;border-collapse:collapse;font-size:.925rem}.doc-table td,.doc-table th{padding:.55rem .75rem;border:1px solid var(--border);text-align:left;vertical-align:top}.doc-table th{background:var(--panel-2);font-weight:600}.doc-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--panel-2) 55%,transparent)}.audit-filters-card{padding-top:18px}.audit-filters-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.audit-filters-title{margin:0 0 4px;font-size:1rem;font-weight:600}.audit-filters-sub{margin:0;font-size:13px}.audit-export-btn{white-space:nowrap}.audit-active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.audit-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:12px;border-radius:999px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);text-decoration:none}.audit-filter-chip span{font-size:14px;line-height:1;color:var(--muted)}.audit-filter-chip:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel-2))}.audit-filter-chip-clear{border-style:dashed;color:var(--muted)}.audit-filters{display:flex;flex-direction:column;gap:18px}.audit-filter-group{margin:0;padding:0;border:none}.audit-filter-group legend{display:block;width:100%;padding:0;margin-bottom:10px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.audit-filter-hint{margin:-4px 0 10px;font-size:13px}.audit-filter-row{display:flex;flex-wrap:wrap;gap:12px 14px}.audit-filter-row,.audit-filter-row-dates{align-items:flex-end}.audit-filter-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted);flex:0 0 auto;max-width:100%}.audit-filter-field-date{width:148px}.audit-filter-field-user{width:min(220px,100%)}.audit-filter-field-entity{width:168px}.audit-filter-field-search{width:min(220px,100%)}.security-filter-row{align-items:flex-end;gap:14px 16px}.security-date-group{display:flex;flex-direction:column;gap:8px;flex:0 0 auto;padding:10px 12px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-group)}.security-date-group-label{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.security-date-group-fields{display:flex;align-items:flex-end;gap:10px}.security-filter-actions,.security-filter-row>.audit-filter-field{padding-bottom:12px}.security-filter-actions{padding-top:0;border-top:none;margin-left:6px;align-items:flex-end}@media (max-width:640px){.security-date-group,.security-filter-row>.audit-filter-field{width:100%}.security-filter-actions,.security-filter-row>.audit-filter-field{padding-bottom:0}.security-filter-actions{margin-left:0}.security-date-group-fields>.audit-filter-field{flex:1 1;width:auto}}.audit-filters input,.audit-filters select{margin-top:0;width:100%;max-width:100%;box-sizing:border-box;padding:8px 10px;font-size:14px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--text)}.audit-filters input[type=date]{padding-right:6px}.audit-filters input:focus,.audit-filters select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.audit-date-presets{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}.audit-date-presets-label{font-size:13px;color:var(--muted)}.audit-date-presets-row{display:flex;flex-wrap:wrap;gap:6px}.audit-preset-btn{display:inline-flex;align-items:center;padding:7px 12px;font-size:13px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);text-decoration:none;white-space:nowrap}.audit-preset-btn:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--panel-2))}.audit-filter-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px;border-top:1px solid var(--border)}.audit-action-multi{margin-top:14px}.audit-action-multi-label{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}.audit-action-checkboxes{display:flex;flex-wrap:wrap;gap:8px}.audit-action-option{display:inline-flex;align-items:center;gap:8px;margin:0;padding:7px 12px;font-size:13px;color:var(--text);border:1px solid var(--border);border-radius:999px;background:var(--panel-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.audit-action-option input{width:auto;margin:0;accent-color:var(--accent)}.audit-action-option:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--panel-2))}.audit-system-toggle{margin-top:12px}.audit-table-wrap{overflow-x:auto}.security-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.security-table{width:100%;table-layout:fixed}.security-table .security-ip,.security-table .security-when{white-space:nowrap}.security-table .security-when{width:10.5rem}.security-table .security-ip{width:7.5rem}.security-table .security-user-agent{width:14rem;max-width:18vw;font-size:.85rem;color:var(--muted);vertical-align:middle}.security-user-agent-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35}.audit-table{width:100%;border-collapse:collapse;font-size:.9rem}.audit-table td,.audit-table th{padding:.55rem .65rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.audit-table th{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb,var(--text) 82%,var(--muted));background:var(--table-head-bg);border-bottom:2px solid var(--table-head-border);padding-top:.65rem;padding-bottom:.65rem}.audit-change-summary{max-width:220px;font-size:.85rem;color:var(--muted)}.audit-table .audit-user-col{width:11rem;min-width:9.5rem;max-width:14rem}.audit-user-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35}.audit-loan-id-cell{max-width:9rem;font-size:.85rem;line-height:1.35;white-space:nowrap}.audit-loan-id{font-weight:600}.audit-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.audit-detail-modal{max-width:720px;max-height:85vh;overflow-y:auto}.audit-json{margin:0 0 1rem;padding:12px;overflow-x:auto;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;font-size:.8rem}.audit-data-table{width:100%;margin:0 0 1rem}.audit-data-table td:first-child,.audit-data-table th:first-child{width:38%;white-space:nowrap}.audit-data-value{word-break:break-word;white-space:pre-wrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-tree{font-size:14px}.loan-tree summary{cursor:pointer;padding:6px 0;list-style:none;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.loan-tree summary::-webkit-details-marker{display:none}.loan-tree summary:before{content:"▸";display:inline-block;transition:transform .15s ease;color:var(--muted)}.loan-tree details[open]>summary:before{transform:rotate(90deg)}.tree-node{border-left:2px solid var(--border);margin-left:10px;padding-left:14px}.tree-root{border-left:none;margin-left:0;padding-left:0}.tree-leaf{margin:4px 0 4px 28px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tree-icon{font-size:15px}.tree-tags{display:inline-flex;gap:6px;flex-wrap:wrap}.tree-tag{background:var(--surface-2,#f3f4f6);border-radius:6px;padding:2px 8px;font-size:12px}.tree-tag-k{color:var(--muted);margin-right:4px}.tree-tag-v{font-weight:600}.first-draw-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.first-draw-hero{display:flex;flex-direction:column;gap:2px;margin:16px 0;padding:18px 20px;border-radius:12px;background:var(--panel-2);border:1px solid var(--border)}.fd-hero-label{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.fd-hero-value{font-size:24px;font-weight:600;line-height:1.2;color:var(--accent)}.fd-formula-note{margin-top:6px;font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.first-draw-summary{margin-bottom:4px}.first-draw-details{margin-top:14px;border-top:1px solid var(--border);padding-top:10px}.first-draw-details>summary{cursor:pointer;list-style:none;font-weight:600;color:var(--accent);padding:4px 0}.first-draw-details>summary::-webkit-details-marker{display:none}.first-draw-details>summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .15s ease}.first-draw-details[open]>summary:before{transform:rotate(90deg)}.fd-lines{margin-top:10px}.fd-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--border);font-size:14px}.fd-line:last-child{border-bottom:none}.fd-line-code{display:inline-block;min-width:48px;margin-right:10px;color:var(--muted);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fd-line-amount{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.fd-line-total{margin-top:4px;border-top:2px solid var(--border);font-weight:700}.fd-line-subtotal{border-bottom:none;font-weight:600}.fd-line-subtotal .fd-line-amount,.fd-line-subtotal .fd-line-label{font-size:14px}.fd-line-total .fd-line-amount,.fd-line-total .fd-line-label{font-size:15px}.badge.ready-to-close{color:var(--good);border-color:var(--good);background:color-mix(in srgb,var(--good) 12%,transparent)}.badge.muted-badge{color:var(--muted)}.loan-closure-card{margin-bottom:18px}.loan-closure-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.loan-closure-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px}.loan-closure-title-row .dashboard-card-title{margin:0}.loan-closure-title-row .loan-summary-statuses{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}.closure-status-row{gap:10px;margin-bottom:16px}.closure-status-badges,.closure-status-row{display:flex;align-items:center;flex-wrap:wrap}.closure-status-badges{gap:8px}.closure-section-note{margin:0 0 10px;font-size:13px;line-height:1.45}.closure-workout-available{margin-top:0;padding:8px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--panel-2))}.closure-status-label{color:var(--muted);font-size:13px;font-weight:600}.closure-section{margin-bottom:16px}.closure-section:last-child{margin-bottom:0}.closure-section-title{margin:0 0 8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);display:flex;align-items:center;gap:4px}.closure-servicing-flow-info{margin:0 0 14px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);font-size:13px;line-height:1.45}.closure-action-items{display:flex;flex-direction:column;gap:14px}.closure-action-item{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.action-tooltip-wrap{display:inline-flex;cursor:not-allowed}.action-tooltip-wrap button:disabled,.action-tooltip-wrap:has(:disabled) button{pointer-events:none}.closure-action-available{margin:0;font-size:13px;line-height:1.45;color:var(--muted);max-width:42rem}.closure-action-helper-label{font-weight:600}.closure-action-helper,.closure-action-unavailable{margin:0;font-size:13px;line-height:1.45;color:var(--muted);max-width:42rem}.closure-action-item.is-enabled .closure-action-item-main .btn-primary{box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 25%,transparent)}.closure-summary-grid{margin-bottom:14px}.closure-actions-grid,.closure-summary-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.closure-subcard{padding:14px 16px;border-radius:10px;border:1px solid var(--border)}.closure-actions-card,.closure-payoff-card,.closure-subcard{background:var(--panel)}.closure-readiness-card.has-blockers{background:color-mix(in srgb,var(--warn,#d99a2b) 7%,var(--panel));border-color:color-mix(in srgb,var(--warn,#d99a2b) 22%,var(--border))}.closure-readiness-card.is-ready{background:color-mix(in srgb,var(--good,#2a7) 7%,var(--panel));border-color:color-mix(in srgb,var(--good,#2a7) 22%,var(--border))}.closure-workout-card{background:color-mix(in srgb,var(--accent) 4%,var(--panel));border-color:color-mix(in srgb,var(--accent) 14%,var(--border))}.closure-subcard-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.closure-subcard-title{margin:0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.closure-subcard-note{margin:-4px 0 12px;font-size:13px;line-height:1.45}.closure-payoff-badge{color:#9a3412;border-color:#ea580c;background:color-mix(in srgb,#ea580c 10%,transparent);font-size:11px}.closure-payoff-table{width:100%;border-collapse:collapse;font-size:14px}.closure-payoff-table th{text-align:left;font-weight:500;color:var(--muted);padding:6px 8px 6px 0}.closure-payoff-table td{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:6px 0}.closure-payoff-table td.is-outstanding,.closure-payoff-table th.is-outstanding{color:var(--text)}.closure-payoff-total-row th{padding-top:14px;border-top:2px solid var(--border);font-weight:600;font-size:13px;color:var(--text);text-transform:uppercase;letter-spacing:.03em}.closure-payoff-total-row td.closure-payoff-total-amount{padding-top:14px;border-top:2px solid var(--border);font-weight:700;font-size:1.25rem;line-height:1.2;color:var(--text)}.closure-payoff-total-amount.is-outstanding{color:var(--text)}.closure-payoff-total-amount.is-cleared{color:var(--good,#2a7)}.closure-payoff-total-row td,.closure-payoff-total-row th{padding-bottom:2px}.closure-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.closure-checklist-item{display:flex;gap:10px;align-items:flex-start}.closure-checklist-icon{flex-shrink:0;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:700;line-height:1}.closure-checklist-item.is-passed .closure-checklist-icon{color:var(--good,#2a7);background:color-mix(in srgb,var(--good,#2a7) 12%,transparent)}.closure-checklist-item.is-failed .closure-checklist-icon{color:var(--bad,#c45);background:color-mix(in srgb,var(--bad,#c45) 12%,transparent)}.closure-checklist-body{display:flex;flex-direction:column;gap:2px;min-width:0}.closure-checklist-label{font-size:14px;font-weight:500;line-height:1.35}.closure-checklist-detail{font-size:13px;line-height:1.4}.closure-checklist-item.is-failed .closure-checklist-detail{color:var(--bad,#c45)}.closure-resolution-flow-wrap{margin:0 0 14px}.closure-resolution-current{margin:0 0 8px;font-size:13px;color:var(--muted);line-height:1.4}.closure-resolution-current strong{color:var(--text);font-weight:600}.closure-resolution-flow{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:color-mix(in srgb,var(--panel-2) 40%,var(--panel));font-size:13px}.closure-resolution-flow-segment{display:inline-flex;align-items:center;gap:4px}.closure-resolution-flow-arrow{color:var(--muted);margin:0 2px}.closure-resolution-flow-step{padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--muted);background:transparent}.closure-resolution-flow-step.is-complete{color:var(--text);border-color:color-mix(in srgb,var(--good,#2a7) 40%,var(--border));background:color-mix(in srgb,var(--good,#2a7) 8%,transparent)}.closure-resolution-flow-step.is-future{opacity:.55}.closure-resolution-flow-step.is-current{color:var(--text);font-weight:700;font-size:14px;border-width:2px;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--panel));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}@media (max-width:900px){.closure-actions-grid,.closure-summary-grid{grid-template-columns:1fr}}.closure-action-requirement{margin:0;font-size:12px;line-height:1.4;max-width:42rem}.modal-impact-box{margin:0 0 14px;padding:10px 12px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--panel-2));font-size:14px;line-height:1.45}.modal-impact-box strong{display:block;margin-bottom:4px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.modal-impact-box p{margin:0}.closure-balances{display:flex;flex-direction:column;gap:0;margin-bottom:0}.closure-balance-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px dashed var(--border)}.closure-balance-label{color:var(--muted);font-size:13px}.closure-balance-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--good)}.closure-balance-value.is-outstanding{color:var(--warn);font-weight:600}.closure-balance-total{border-bottom:none;border-top:1px solid var(--border);margin-top:4px;padding-top:8px;font-weight:600}.closure-balance-total .closure-balance-label{color:var(--text);font-size:14px}.closure-blockers-none{margin:0;font-size:13px}.closure-warnings-note{margin:8px 0 0;font-size:12px}.closure-blockers{border:1px solid color-mix(in srgb,var(--warn) 40%,var(--border));background:color-mix(in srgb,var(--warn) 8%,transparent);border-radius:8px;padding:12px 14px;margin-bottom:0}.closure-blockers-title{display:block;margin-bottom:8px;font-size:13px}.closure-blockers ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.closure-blockers li{font-size:14px;line-height:1.45;padding-left:1.1em;position:relative}.closure-blockers li:before{content:"•";position:absolute;left:0;color:var(--warn)}.closure-warnings{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;padding:12px 14px;margin-bottom:14px}.closure-warnings-title{display:block;margin-bottom:8px;font-size:13px;color:var(--muted)}.closure-warnings ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.closure-warnings li{display:grid;grid-template-columns:1fr auto;grid-gap:2px 12px;gap:2px 12px;align-items:baseline}.closure-warning-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;color:var(--muted)}.closure-reserve-warning{border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin-bottom:14px;background:var(--panel-2)}.closure-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.closure-action-groups{display:flex;flex-direction:column;gap:20px}.closure-action-group{display:flex;flex-direction:column;gap:8px}.closure-action-group-title{margin:0;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.closure-action-group-note{margin:-4px 0 0;font-size:13px}.closure-action-group-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.closure-action-group-actions .btn-secondary:not(:disabled){color:var(--text);background:var(--panel)}.closure-action-group-actions .btn-secondary:not(:disabled):hover{color:var(--accent);border-color:var(--accent)}.closure-reserve-released{margin:12px 0 0;padding:10px 12px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--panel-2));font-size:14px}.closure-action-error{flex:1 1 100%;margin:0}.closure-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px 24px;gap:10px 24px;margin:0 0 12px}.closure-meta>div{display:flex;flex-direction:column;gap:2px}.closure-meta-full{grid-column:1/-1}.closure-meta dt{color:var(--muted);font-size:12px}.closure-meta dd{margin:0;font-size:14px}.closure-readonly-note{margin:0 0 14px;font-size:13px}.closure-reopen{border-top:1px solid var(--border);padding-top:14px}.closure-confirm-summary{margin-bottom:16px}.closure-warning{margin:0 0 14px}@media (max-width:640px){.closure-balances,.closure-meta{grid-template-columns:1fr}}.participant-due-month-nav{align-items:flex-end;flex-wrap:wrap;gap:10px}.participant-due-month-current{font-weight:700;font-size:15px;padding-bottom:6px}.participant-due-filter-actions,.participant-due-toolbar{align-items:center;justify-content:space-between}.participant-due-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:4px 0 12px}.participant-due-kpis{margin-bottom:12px}.participant-due-multicurrency{margin:-4px 0 12px}.participant-due-loan-group{padding:0;overflow:hidden}.participant-due-loan-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 16px;border-bottom:1px solid var(--border-subtle,var(--border));background:var(--surface-group,color-mix(in srgb,var(--accent) 4%,var(--panel)))}.participant-due-loan-number{font-weight:700;font-size:15px}.participant-due-loan-borrower{color:var(--muted);font-weight:500}.participant-due-loan-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.participant-due-table{margin:0}.participant-due-table tfoot .participant-due-subtotal td{padding:10px;font-weight:700;border-top:2px solid var(--table-head-border,var(--border));background:var(--surface-muted,color-mix(in srgb,var(--accent) 3%,var(--panel)))}.participant-due-expand{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left;display:inline-flex;align-items:center;gap:6px}.participant-due-expand:hover{text-decoration:underline}.participant-due-details-row td{background:var(--surface-muted,color-mix(in srgb,var(--accent) 3%,var(--panel)))}.participant-due-details{padding:6px 4px}.participant-due-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px 20px;gap:10px 20px;margin:0}.participant-due-details-grid dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.participant-due-details-grid dd{margin:2px 0 0;font-weight:600;font-size:13px}.participant-due-report-total{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.participant-due-report-total-label{font-weight:700}.participant-due-report-total-values{display:flex;gap:20px;flex-wrap:wrap}.participant-tracker-summary-strip{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:stretch;padding:10px 14px;margin-bottom:12px;border:1px solid var(--border-subtle,var(--border));border-radius:10px;background:var(--surface-muted,color-mix(in srgb,var(--accent) 3%,var(--panel)))}.participant-tracker-summary-group{display:flex;align-items:stretch;gap:28px}.participant-tracker-summary-ccy{align-self:center;font-weight:700;font-size:12px;color:var(--muted)}.participant-tracker-summary-metric{display:flex;flex-direction:column;gap:2px;position:relative;padding-right:28px}.participant-tracker-summary-metric:not(:last-child):after{content:"";position:absolute;right:0;top:10%;height:80%;border-right:1px solid var(--border-subtle,var(--border))}.participant-tracker-summary-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.participant-tracker-summary-value{font-size:16px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.participant-tracker-compact{table-layout:auto}.participant-tracker-compact thead th{white-space:nowrap}.participant-tracker-compact td,.participant-tracker-compact th{padding:7px 8px}.participant-tracker-compact td.num,.participant-tracker-compact th.num{text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.participant-tracker-col-expand{width:28px;text-align:center;padding-left:4px!important;padding-right:4px!important}.participant-tracker-expand{background:none;border:none;cursor:pointer;color:var(--muted);font-size:12px;line-height:1;padding:2px 4px}.participant-tracker-expand:hover{color:var(--text)}.participant-tracker-col-loan{white-space:nowrap}.participant-tracker-col-seq{width:36px;text-align:right}.participant-tracker-col-date{white-space:nowrap}.participant-tracker-participant{max-width:220px}.participant-tracker-participant-name{display:inline-block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.participant-tracker-agreement{margin-left:6px;font-size:10px;padding:1px 6px;vertical-align:middle}.participant-tracker-row-open>td{background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.participant-tracker-details-row>td{background:var(--surface-muted,color-mix(in srgb,var(--accent) 3%,var(--panel)));padding:12px 16px!important}.participant-tracker-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px 24px;gap:12px 24px}.participant-tracker-detail-block h5{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.participant-tracker-detail-line{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;padding:2px 0}.participant-tracker-detail-line .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.participant-tracker-txns{margin-top:4px;padding-top:4px;border-top:1px dashed var(--border-subtle,var(--border))}.participant-tracker-txn{color:var(--muted);font-size:12px}.participant-tracker-sort{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;white-space:nowrap}.participant-tracker-compact th.num .participant-tracker-sort{flex-direction:row-reverse}.participant-tracker-sort:hover{color:var(--text)}.participant-tracker-sort-arrow{font-size:9px;opacity:.45;line-height:1}.participant-tracker-sort.is-active .participant-tracker-sort-arrow{opacity:1;color:var(--accent)}.payoff-workspace{max-width:min(1200px,100%)}.payoff-dates-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.payoff-dates-edit{align-items:start;padding:14px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.payoff-dates-edit .payoff-date-item input[type=date]{width:100%;max-width:11rem;margin-top:2px}.payoff-dates-edit-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:4px}.payoff-recalculate-panel{border-top:1px solid var(--border);padding-top:14px;margin-top:16px}.payoff-review-decision{margin-top:12px;padding:14px 16px 16px;border:1px solid var(--border);border-radius:8px;background:var(--panel);display:flex;flex-direction:column;gap:12px;width:100%;max-width:none;box-sizing:border-box}.payoff-review-decision-title{margin:0;font-size:1.05rem}.payoff-review-columns{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}@media (min-width:768px){.payoff-review-columns{grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}}.payoff-review-column{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:8px;border:1px solid var(--border);min-width:0}.payoff-review-column-approve{background:color-mix(in srgb,#2563eb 7%,var(--panel));border-color:color-mix(in srgb,#2563eb 22%,var(--border))}.payoff-review-column-reject{background:color-mix(in srgb,#dc2626 6%,var(--panel));border-color:color-mix(in srgb,#dc2626 22%,var(--border))}.payoff-review-column-title{margin:0;font-size:.95rem;font-weight:600}.payoff-review-column-copy{margin:0;font-size:.9rem}.payoff-review-column-approve .btn-primary,.payoff-review-column-reject .btn-danger-secondary{align-self:flex-start;margin-top:auto}.payoff-review-column-reject .payoff-field textarea{width:100%;min-height:4.5rem;resize:vertical;box-sizing:border-box}.payoff-review-modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:20px}.payoff-workspace-actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;align-items:center}.payoff-issued-actions-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.payoff-issued-actions .btn-secondary{padding:6px 10px;font-size:13px}.payoff-dates-card .payoff-date-item{display:flex;flex-direction:column;gap:2px}.payoff-dates-card .payoff-date-label{font-size:.8rem;color:var(--muted-text,#6b7280);text-transform:uppercase;letter-spacing:.02em}.payoff-dates-card .payoff-date-value{font-weight:600}.payoff-dates-card .payoff-date-item.is-wire-deadline .payoff-date-value{color:var(--warn,#b45309)}.payoff-dates-card .payoff-date-item.is-wire-deadline .payoff-date-label{color:var(--warn,#b45309);display:inline-flex;align-items:center;gap:4px;text-transform:none;letter-spacing:0;font-size:.85rem;font-weight:600}.payoff-dates-card .payoff-deadline-icon{font-style:normal}.payoff-dates-card .payoff-date-note{font-size:.8rem;color:var(--muted-text,#6b7280)}.payoff-summary-scroll{width:100%;margin-bottom:12px;overflow:visible}.payoff-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));grid-gap:12px;gap:12px;width:100%}.payoff-summary-item{min-width:0;display:flex;flex-direction:column;justify-content:flex-start;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:14px 12px;box-sizing:border-box;overflow:visible}.payoff-summary-label,.payoff-summary-note,.payoff-summary-value{display:block}.payoff-summary-label{font-size:.8rem;color:var(--muted-text,#6b7280);line-height:1.3}.payoff-summary-label .info-tip-trigger{display:inline-flex;margin-left:4px;vertical-align:middle}.payoff-summary-value{margin-top:6px;font-weight:700;font-size:clamp(16px,1.4vw,20px);line-height:1.25;white-space:nowrap}.payoff-line-table td.is-credit,.payoff-summary-value.is-credit{color:var(--warn,#b45309)}.payoff-summary-note{margin-top:4px;font-size:.8rem;color:var(--muted-text,#6b7280);line-height:1.3}.payoff-summary-item.is-total{margin-bottom:16px;background:var(--panel-2,var(--panel));border-color:var(--text);border-width:2px;padding:16px 14px}.payoff-summary-item.is-total .payoff-summary-label{font-size:.9rem;font-weight:700;color:var(--text)}.payoff-summary-item.is-total .payoff-summary-value{font-size:clamp(20px,2vw,28px)}.payoff-line-table tfoot .payoff-total-row th{font-size:1.05rem;padding-top:12px}.payoff-field{display:flex;flex-direction:column;gap:4px}.payoff-field-label{font-weight:600}.payoff-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px;margin-bottom:14px}.payoff-other-fees-desc{margin-bottom:14px}.payoff-currency-input{display:flex;align-items:center;border:1px solid var(--border);border-radius:6px;overflow:hidden}.payoff-currency-input .payoff-currency-prefix{padding:0 8px;background:var(--panel);color:var(--muted-text,#6b7280);border-right:1px solid var(--border)}.payoff-currency-input input{border:none;flex:1 1;padding:6px 8px;width:auto;margin-top:0}.payoff-calc-form input[type=checkbox],.payoff-calc-form input[type=radio]{width:auto;min-width:1rem;height:auto;margin:0;flex:0 0 auto;accent-color:var(--accent)}.payoff-adjustment{margin-bottom:14px}.payoff-adjustment.is-open{border:1px solid var(--border);border-radius:8px;padding:12px 14px}.payoff-adjustment-toggle{display:inline-flex;align-items:center;gap:8px;font-weight:600;cursor:pointer;width:-moz-fit-content;width:fit-content;max-width:100%;margin:0}.payoff-adjustment-toggle input[type=checkbox]{width:1rem;max-width:1rem;min-width:1rem;height:1rem;margin:0;flex:none}.payoff-adjustment-toggle span{line-height:1.3;flex:0 1 auto}.payoff-adjustment-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.payoff-adjustment-hint{margin:6px 0 0;max-width:42rem}.payoff-adjustment-body{display:flex;flex-direction:column;gap:12px;margin-top:12px}.payoff-radio-row{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}.payoff-radio-option{display:inline-flex;align-items:center;gap:6px;cursor:pointer;width:-moz-fit-content;width:fit-content;font-weight:500}.payoff-form-error{color:var(--warn,#b45309);margin:0 0 12px}.payoff-calc-form .btn-primary{margin-top:4px}.config-list-head{display:grid;grid-template-columns:1fr auto;grid-gap:8px 12px;gap:8px 12px;align-items:center;margin-bottom:12px}.config-list-head h3{margin:0;grid-column:1;grid-row:1}.config-add{display:contents}.config-add-toggle{grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;font-size:22px;font-weight:500;line-height:1;color:var(--accent);background:var(--panel-2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.config-add-toggle:hover{border-color:var(--accent)}.config-add-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.config-add-toggle[aria-expanded=true]{color:var(--muted)}.config-add-panel{grid-column:1/-1;grid-row:2;padding:12px 14px;background:var(--panel-2);border:1px dashed var(--border);border-radius:10px}.config-add-panel-title{margin:0 0 10px;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.config-add-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.config-show-updated{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;color:var(--muted);cursor:pointer;width:-moz-fit-content;width:fit-content}.config-show-updated input[type=checkbox]{width:auto;margin:0}.config-lists .config-col-updated{display:none}.config-lists.is-show-updated .config-col-updated{display:table-cell}.config-inline-edit{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;white-space:nowrap}.config-inline-edit input[type=text]{width:auto;min-width:8rem;max-width:14rem;flex:1 1 10rem;margin-top:0}.config-inline-edit .btn-secondary{flex-shrink:0;white-space:nowrap;padding:6px 10px}.config-lists table td,.config-lists table th{text-align:left;vertical-align:middle}.config-lists .config-col-code,.config-lists .config-col-default,.config-lists .config-col-status{text-align:center}.config-lists .config-col-default .config-default-cell{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px}