/* Scoped Loans experience. All business controls and source values are retained. */
#osApp #osContent.loan-experience{--lx-bg:#f7f6f1;--lx-surface:#fffefa;--lx-raised:#f1f0e8;--lx-line:#dedfd5;--lx-ink:#202b28;--lx-muted:#5d6d65;--lx-gold:#856512;--lx-gold-soft:#eee4bf;--lx-good:#107653;--lx-blue:#286b9b;--lx-red:#af413b;--lx-amber:#956309;background:var(--lx-bg);color:var(--lx-ink);}
html[data-roc-theme="dark"] #osApp #osContent.loan-experience{--lx-bg:#0b1210;--lx-surface:#111c18;--lx-raised:#192720;--lx-line:#2b3a31;--lx-ink:#f1f3ec;--lx-muted:#abb9ad;--lx-gold:#e3c77e;--lx-gold-soft:#332f20;--lx-good:#76d5aa;--lx-blue:#89c7ed;--lx-red:#f39189;--lx-amber:#e7bf70;}
#osApp .loan-experience .loan-management-tabs{display:flex;gap:7px;padding:5px;border:1px solid var(--lx-line);background:var(--lx-surface);border-radius:13px;margin-bottom:22px;overflow-x:auto;}
#osApp .loan-experience .loan-management-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:10px 18px;border:0;border-radius:9px;font:600 12px "DM Sans",sans-serif;color:var(--lx-muted);white-space:nowrap;transition:background .18s,color .18s;}
#osApp .loan-experience .loan-management-tabs button.active{background:var(--lx-gold-soft);color:var(--lx-gold);box-shadow:none;}
#osApp .loan-experience .loan-management-tabs svg{width:17px;height:17px;}
#osApp .loan-experience .loan-portfolio-summary{padding:0;border:0;background:transparent;margin:0 0 22px;}
#osApp .loan-experience .loan-portfolio-summary>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:0;}
#osApp .loan-experience .eyebrow{color:var(--lx-gold);letter-spacing:2px;font-size:9px;}
#osApp .loan-experience .loan-portfolio-summary h2{font:600 29px/1.2 "DM Sans",sans-serif;letter-spacing:-1px;color:var(--lx-ink);margin:9px 0;}
#osApp .loan-experience .loan-portfolio-summary p{color:var(--lx-muted);font-size:11px;line-height:1.6;}
#osApp .loan-experience .loan-portfolio-summary .kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0;}
#osApp .loan-experience .loan-portfolio-summary [hidden]{display:none!important;}
#osApp .loan-experience .kpi-card{background:var(--lx-surface);border:1px solid var(--lx-line);border-radius:13px;min-height:132px;padding:16px;box-shadow:none;transition:transform .2s,border-color .2s;}
#osApp .loan-experience .kpi-card:hover{transform:translateY(-2px);border-color:var(--lx-gold);}
#osApp .loan-experience .kpi-top{color:var(--lx-muted);font-size:10px;letter-spacing:.2px;}
#osApp .loan-experience .kpi-icon{background:var(--lx-gold-soft);color:var(--lx-gold);border-radius:10px;}
#osApp .loan-experience .kpi-value{font-size:26px;letter-spacing:-.7px;color:var(--lx-ink);margin:18px 0 9px;}
#osApp .loan-experience .kpi-card .delta{color:var(--lx-muted);font-size:10px;line-height:1.45;}
#osApp .loan-experience .loan-portfolio-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0 0 18px;padding:0;}
#osApp .loan-experience .loan-portfolio-filter-group{display:flex;gap:7px;flex-wrap:wrap;}
#osApp .loan-experience .loan-portfolio-filter-group .filter-btn{display:flex;align-items:center;gap:7px;font-size:11px;padding:8px 12px;min-height:38px;color:var(--lx-muted);border:1px solid var(--lx-line);border-radius:24px;background:var(--lx-surface);}
#osApp .loan-experience .loan-portfolio-filter-group svg{width:14px;height:14px;}
#osApp .loan-experience .loan-portfolio-filter-group .active{color:var(--lx-gold);background:var(--lx-gold-soft);border-color:var(--lx-gold);}
#osApp .loan-experience .loan-portfolio-filter-group b{background:var(--lx-raised);color:var(--lx-ink);min-width:22px;border-radius:8px;padding:3px;}
#osApp .loan-experience .loan-portfolio-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;max-width:none;width:100%;}
#osApp .loan-experience :is(.loan-portfolio-search,.loan-portfolio-sort){background:var(--lx-surface);border:1px solid var(--lx-line);color:var(--lx-muted);border-radius:10px;min-height:40px;}
#osApp .loan-experience .loan-portfolio-search{flex:1 1 250px;max-width:420px;}
#osApp .loan-experience :is(input,select){color:var(--lx-ink);background:var(--lx-surface);}
#osApp .loan-experience :is(.loan-ui-button,.loan-portfolio-toolbar-actions .filter-btn){display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--lx-line);background:var(--lx-surface);color:var(--lx-ink);min-height:39px;padding:9px 12px;border-radius:9px;font:600 11px/1.3 "DM Sans",sans-serif;cursor:pointer;transition:background .18s,border-color .18s,transform .18s;}
#osApp .loan-experience .loan-ui-button svg{width:16px;height:16px;flex-shrink:0;}
#osApp .loan-experience .loan-ui-button:hover{background:var(--lx-raised);border-color:var(--lx-gold);}
#osApp .loan-experience .loan-ui-button:active{transform:translateY(1px);}
#osApp .loan-experience .loan-ui-button[aria-pressed="true"]{background:var(--lx-gold-soft);color:var(--lx-gold);border-color:var(--lx-gold);}
#osApp .loan-experience .loan-table-panel{padding:18px;border:1px solid var(--lx-line);border-radius:16px;background:var(--lx-surface);box-shadow:0 8px 24px #00000004;}
#osApp .loan-experience .panel-head h3{font-size:16px;color:var(--lx-ink);}
#osApp .loan-experience .panel-head span{color:var(--lx-muted);font-size:10px;line-height:1.6;}
#osApp .loan-experience .loan-table{min-width:1260px;color:var(--lx-ink);}
#osApp .loan-experience .loan-table :is(th,td){border-color:var(--lx-line);}
#osApp .loan-experience .loan-table th{background:var(--lx-surface);color:var(--lx-muted);padding:14px 10px;font-size:9px;letter-spacing:.6px;}
#osApp .loan-experience .loan-table td{padding:16px 10px;height:94px;background:transparent;font-size:11px;}
#osApp .loan-experience .loan-table tbody tr{height:94px;transition:background .18s;}
#osApp .loan-experience .loan-table tbody tr:hover{background:var(--lx-raised);}
#osApp .loan-experience .loan-table tbody tr.loan-quick-selected{background:var(--lx-gold-soft);box-shadow:inset 3px 0 var(--lx-gold);}
#osApp .loan-experience .loan-table :is(b,.loan-client){color:var(--lx-ink);}
#osApp .loan-experience .loan-table small{color:var(--lx-muted);}
#osApp .loan-experience .loan-client .avatar{background:var(--lx-gold-soft);color:var(--lx-gold);border:1px solid var(--lx-line);border-radius:12px;}
#osApp .loan-experience .loan-table td:last-child{width:70px;}
#osApp .loan-experience [data-loan-quick]{min-width:32px;min-height:32px;padding:6px;margin:0 auto 4px;}
#osApp .loan-experience .loan-table .progress-track{height:5px;border-radius:5px;background:var(--lx-line);overflow:hidden;}
#osApp .loan-experience :is(.loan-paid-check,.loan-settled-date,.days-cell.good){color:var(--lx-good);}
#osApp .loan-experience :is(.days-cell.warning){color:var(--lx-amber);}
#osApp .loan-experience :is(.days-cell.danger){color:var(--lx-red);}
#osApp .loan-experience .days-cell.neutral{color:var(--lx-muted);}
#osApp .loan-experience .loan-legacy-date{color:var(--lx-ink);}
#osApp .loan-experience .roc-score-animated{--score-color:var(--lx-blue);display:flex;gap:10px;padding:6px;border-radius:10px;transition:background .2s;}
#osApp .loan-experience .roc-score-animated:hover{background:var(--lx-raised);}
#osApp .loan-experience .roc-score-animated--strong{--score-color:var(--lx-gold);}
#osApp .loan-experience .roc-score-animated--fair{--score-color:var(--lx-amber);}
#osApp .loan-experience .roc-score-animated--weak{--score-color:var(--lx-red);}
#osApp .loan-experience .roc-score-animated--empty{--score-color:var(--lx-muted);}
#osApp .loan-experience .roc-score-animated__gauge{width:56px;height:56px;min-width:56px;position:relative;}
#osApp .loan-experience .roc-score-animated__ring{width:56px;height:56px;transform:rotate(135deg);overflow:visible;}
#osApp .loan-experience .roc-score-animated__track{stroke:var(--lx-line);stroke-width:2.6;stroke-dasharray:75 25;fill:none;}
#osApp .loan-experience .roc-score-animated__fill{stroke:var(--score-color);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:var(--loan-score-arc,0) 100;stroke-dashoffset:0;fill:none;animation:loanScoreReveal 1s cubic-bezier(.2,.7,.2,1) both;}
#osApp .loan-experience .roc-score-animated__value{color:var(--lx-ink);font:700 17px "DM Sans",sans-serif;top:40%;}
#osApp .loan-experience .loan-score-scale{position:absolute;bottom:4px;left:0;width:100%;text-align:center;font-size:8px;color:var(--lx-muted);}
#osApp .loan-experience .roc-score-animated__label{color:var(--score-color);font-size:11px;}
#osApp .loan-experience .roc-score-animated__description{color:var(--lx-muted);font-size:9px;line-height:1.4;}
#osApp .loan-experience .roc-score-animated__stars{display:none;}
#osApp .loan-experience.loan-density-compact .loan-table td{height:70px;padding-block:8px;}
#osApp .loan-experience.loan-density-compact .loan-table tr{height:70px;}
#osApp .loan-experience .loan-focus-open .loan-portfolio-split{grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start;}
#osApp .loan-experience .loan-focus-open .loan-table{min-width:650px;}
#osApp .loan-experience .loan-focus-open .loan-table :is(th,td,col):is(:nth-child(2),:nth-child(5),:nth-child(7),:nth-child(8),:nth-child(9)){display:none;}
#osApp .loan-experience .loan-focus-open .loan-table col{width:auto;}
#osApp .loan-experience .loan-focus-open .loan-table :is(th,td){width:auto;}
#osApp .loan-experience .loan-focus-open .loan-table :is(th,td):last-child{width:58px;}
#osApp .loan-experience .loan-focus-panel{position:sticky;top:18px;border:1px solid var(--lx-line);border-radius:13px;padding:19px;background:var(--lx-raised);max-height:80vh;overflow:auto;animation:loanFocusIn .22s ease-out;}
#osApp .loan-experience .loan-focus-panel header{position:relative;padding-right:32px;}
#osApp .loan-experience .loan-focus-panel header .loan-ui-button{position:absolute;right:-7px;top:-7px;padding:7px;width:30px;min-height:30px;font-size:0;}
#osApp .loan-experience .loan-focus-panel h3{font:600 21px/1.3 "DM Sans",sans-serif;margin:12px 0 6px;overflow-wrap:anywhere;color:var(--lx-ink);}
#osApp .loan-experience .loan-focus-panel p{font-size:10px;line-height:1.6;color:var(--lx-muted);}
#osApp .loan-experience .loan-focus-score{width:100%;padding:14px 0;margin:14px 0;border-block:1px solid var(--lx-line);}
#osApp .loan-experience .loan-focus-score .roc-score-animated__gauge,#osApp .loan-experience .loan-focus-score .roc-score-animated__ring{width:112px;height:112px;min-width:112px;}
#osApp .loan-experience .loan-focus-score .roc-score-animated__value{font-size:32px;}
#osApp .loan-experience .loan-focus-score .loan-score-scale{bottom:18px;font-size:10px;}
#osApp .loan-experience .loan-focus-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin:18px 0;}
#osApp .loan-experience .loan-focus-facts dt{font-size:9px;letter-spacing:.6px;text-transform:uppercase;color:var(--lx-muted);margin-bottom:5px;}
#osApp .loan-experience .loan-focus-facts dd{margin:0;font-size:12px;line-height:1.5;color:var(--lx-ink);white-space:pre-line;overflow-wrap:anywhere;}
#osApp .loan-experience .loan-focus-note{border-top:1px solid var(--lx-line);padding-top:12px;}
html[data-roc-privacy="hidden"] #osApp .loan-experience .loan-focus-panel{visibility:hidden;pointer-events:none;}
#osApp .loan-experience .loan-mobile-card{border:1px solid var(--lx-line);border-radius:13px;background:var(--lx-surface);color:var(--lx-ink);padding:18px;}
#osApp .loan-experience .loan-mobile-card :is(.loan-mobile-money,.repayment-cell) small{display:block!important;color:var(--lx-muted);font-size:10px;line-height:1.5;margin:4px 0;}
#osApp .loan-experience :is(button,input,select):focus-visible{outline:2px solid var(--lx-gold);outline-offset:3px;}
@keyframes loanScoreReveal{from{stroke-dasharray:0 100;}to{stroke-dasharray:var(--loan-score-arc,0) 100;}}
@keyframes loanFocusIn{from{opacity:0;transform:translateX(8px);}to{opacity:1;transform:none;}}
@media(max-width:1200px){#osApp .loan-experience .loan-portfolio-summary .kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}#osApp .loan-experience .loan-focus-open .loan-portfolio-split{grid-template-columns:minmax(0,1fr);}#osApp .loan-experience .loan-focus-panel{position:relative;grid-row:1;max-height:none;} }
@media(max-width:700px){#osApp .loan-experience .loan-portfolio-summary .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}#osApp .loan-experience .loan-portfolio-summary>header{align-items:flex-start;}#osApp .loan-experience .loan-portfolio-summary h2{font-size:25px;}#osApp .loan-experience .loan-portfolio-summary header .loan-ui-button{font-size:10px;padding:8px;min-width:90px;}#osApp .loan-experience .kpi-value{font-size:22px;}#osApp .loan-experience .loan-management-tabs button{padding:9px 12px;}#osApp .loan-experience .loan-portfolio-search{max-width:none;}#osApp .loan-experience .loan-sort-note{display:none;}#osApp .loan-experience .loan-table-panel{padding:13px;} }
@media(prefers-reduced-motion:reduce){#osApp .loan-experience *,#osApp .loan-experience *::before,#osApp .loan-experience *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
@media(max-width:850px){#osApp #osContent.loan-experience [data-loan-density]{display:none;}}
