:root{--bg:#05080c;--panel:#0b1118;--line:#3f3727;--gold:#d4ad5b;--text:#f4ead5;--muted:#99a2ad;--good:#82d6a0;--bad:#ff9b9b}*{box-sizing:border-box}body{margin:0;background:linear-gradient(145deg,#030508,#0a1017);color:var(--text);font-family:Arial,sans-serif}.lp-head{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#05080ddd;position:sticky;top:0;z-index:20}.lp-brand{color:var(--text);text-decoration:none;font-weight:900;letter-spacing:.08em}.lp-head nav{display:flex;gap:10px}.lp-head a,.lp-head button{color:var(--text)}.lp-shell{max-width:1280px;margin:auto;padding:28px 20px 60px}.lp-alert{padding:12px 14px;border:1px solid #66542d;background:#171307;color:#e9cc83;margin-bottom:18px;font-size:13px}.lp-title{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.lp-title h1{font:42px Georgia,serif;margin:0}.lp-title p{color:var(--muted);margin:6px 0 0}.lp-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:12px}.lp-tab,.lp-btn{border:1px solid #6c5930;background:#0d1218;color:var(--text);padding:11px 14px;cursor:pointer;text-decoration:none;font-weight:700}.lp-tab.active,.lp-btn.primary{background:var(--gold);color:#07090c}.lp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.lp-card{background:var(--panel);border:1px solid var(--line);padding:20px}.lp-card h2,.lp-card h3{margin-top:0}.lp-metric small{color:var(--muted);font:700 10px monospace;letter-spacing:.12em}.lp-metric strong{display:block;font-size:28px;color:#e8ca81;margin-top:8px}.lp-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:16px;margin-top:16px}.lp-panel{display:none}.lp-panel.active{display:block}.lp-table{width:100%;border-collapse:collapse}.lp-table th,.lp-table td{text-align:left;padding:12px;border-bottom:1px solid #2f2b23;font-size:13px}.lp-table th{color:var(--muted)}.lp-status{display:inline-block;border:1px solid #6d5a31;padding:6px 8px;font:700 10px monospace;letter-spacing:.08em}.lp-form{display:grid;gap:12px}.lp-form label{font-size:12px;color:var(--muted)}.lp-form input,.lp-form select,.lp-form textarea{width:100%;background:#05090e;border:1px solid #4a4335;color:white;padding:12px}.lp-actions{display:flex;gap:10px;flex-wrap:wrap}.lp-empty{color:var(--muted);padding:20px;border:1px dashed #464034}.lp-toast{margin-top:12px;color:var(--good)}.lp-danger{color:var(--bad)}.lp-network{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lp-network a{display:block;color:var(--text);text-decoration:none;border:1px solid var(--line);padding:18px;background:#080d12}.lp-network b{display:block;color:var(--gold);margin-bottom:5px}@media(max-width:900px){.lp-grid{grid-template-columns:1fr 1fr}.lp-layout{grid-template-columns:1fr}.lp-title{align-items:flex-start;flex-direction:column}.lp-network{grid-template-columns:1fr}}@media(max-width:560px){.lp-grid{grid-template-columns:1fr}.lp-head{padding:0 12px}.lp-head nav a{display:none}.lp-title h1{font-size:34px}}
.portal-error .lp-alert{border-color:#7f1d1d;background:rgba(127,29,29,.18)}
.lp-toast{opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s ease}
.lp-toast.show{opacity:1;transform:translateY(0)}
button:disabled{opacity:.55;cursor:not-allowed}
.lp-help{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.lp-status-submitted,.lp-status-application-received,.lp-status-pending-review,.lp-status-processing{color:#e8ca81}.lp-status-active,.lp-status-open,.lp-status-approved,.lp-status-posted,.lp-status-completed{color:var(--good)}.lp-status-declined,.lp-status-denied,.lp-status-failed,.lp-status-cancelled{color:var(--bad)}@media(max-width:560px){.lp-title .lp-actions{width:100%}.lp-title .lp-actions .lp-btn{flex:1;text-align:center}.lp-card{padding:15px}.lp-table{display:block;overflow-x:auto;white-space:nowrap}.lp-tabs{scrollbar-width:thin}}
.lp-mini{border:1px solid #6c5930;background:#101720;color:var(--text);padding:7px 9px;cursor:pointer;font-size:11px}.lp-mini.danger{border-color:#7f1d1d;color:#ffb0b0}.lp-responsive{overflow:auto}.lp-notifications{display:grid;gap:10px}.lp-notification{display:flex;justify-content:space-between;gap:15px;border:1px solid var(--line);padding:14px;background:#080d12}.lp-notification.unread{border-color:var(--gold)}.lp-notification p{margin:6px 0;color:var(--muted)}.lp-notification small{color:var(--muted)}.lp-statement{margin-top:18px;border:1px solid var(--line);padding:20px;background:#fff;color:#111}.admin-link{display:block;margin-top:12px;text-align:center}.lp-status-locked{color:#ffcf70}@media print{.lp-head,.lp-alert,.lp-title,.lp-tabs,.lp-panel:not(#panel-statements),#panel-statements aside,.lp-actions,.lp-toast{display:none!important}body{background:#fff;color:#111}.lp-shell{max-width:none;padding:0}#panel-statements{display:block!important}.lp-card{border:0;background:#fff;color:#111;padding:0}.lp-statement{border:0}}


/* V13 customer account center */
.lp-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:18px}
.lp-account-card{border:1px solid rgba(214,177,89,.38);background:linear-gradient(145deg,rgba(18,27,36,.98),rgba(7,12,18,.98));padding:22px;min-height:230px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 16px 45px rgba(0,0,0,.2)}
.lp-account-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.lp-account-card h3{margin:5px 0 0;font-size:1.35rem}
.lp-account-card small{color:#9aa4b2;text-transform:uppercase;letter-spacing:.12em}
.lp-account-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.12rem;letter-spacing:.14em;color:#e3c16d;margin:24px 0}
.lp-account-balances{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lp-account-balances span{border-top:1px solid rgba(255,255,255,.1);padding-top:12px}
.lp-account-balances strong{display:block;margin-top:5px;font-size:1.18rem}
.lp-account-card footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(255,255,255,.08);padding-top:15px;margin-top:20px;color:#9aa4b2;font-size:.82rem}
.lp-empty-card{border:1px dashed rgba(214,177,89,.35);padding:30px;text-align:center;grid-column:1/-1}
@media(max-width:640px){.lp-account-grid{grid-template-columns:1fr}.lp-account-balances{grid-template-columns:1fr}.lp-account-card footer{flex-direction:column}}
.lp-amount-positive{color:#8fe1ac;font-weight:700}.lp-amount-negative{color:#f2a1a1;font-weight:700}
.lp-summary-grid,.lp-statement-filters,.lp-statement-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.lp-summary-grid>div,.lp-statement-totals>p{border:1px solid rgba(214,174,86,.32);padding:14px;background:rgba(214,174,86,.04)}.lp-summary-grid small{display:block;color:#9ca3af}.lp-summary-grid strong{font-size:1.5rem;color:#d8b15a}.lp-statement-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-statement-filters label{display:grid;gap:8px}.lp-statement-filters select,.lp-statement-filters input{width:100%;padding:12px;background:#05090d;color:#f4ead6;border:1px solid rgba(214,174,86,.35)}@media(max-width:700px){.lp-summary-grid,.lp-statement-filters,.lp-statement-totals{grid-template-columns:1fr}}

.lp-searchbar{display:flex;gap:.75rem;align-items:center;margin:1rem 0}.lp-searchbar input{flex:1;min-width:0}.lp-form textarea{width:100%;resize:vertical}.lp-table code{white-space:pre-wrap;word-break:break-word;font-size:.72rem}.lp-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}@media(max-width:720px){.lp-searchbar{flex-direction:column;align-items:stretch}.lp-table{min-width:760px}.lp-tabs{overflow-x:auto;flex-wrap:nowrap}.lp-tab{white-space:nowrap}.lp-card{padding:1rem}.lp-title{gap:1rem}}
/* V17 banking operations */
.lp-build-tag{display:inline-block;margin:0 0 12px;padding:7px 10px;border:1px solid #8d7134;background:#1b1608;color:#e8c76c;font-size:.72rem;font-weight:800;letter-spacing:.12em}
.lp-activity-card{order:0}
.lp-transactions-layout article{order:1}
.lp-form-status{min-height:1.25rem;margin:.35rem 0 0}
.lp-release{margin:28px 0 4px;text-align:center;color:#8e929b;font-size:.78rem;letter-spacing:.08em}
@media(max-width:760px){.lp-transactions-layout{display:flex;flex-direction:column}.lp-activity-card{order:0}.lp-transactions-layout article{order:1}.lp-activity-card .lp-btn{width:100%;min-height:54px}.lp-table{min-width:720px}.lp-card{overflow-x:auto}}


/* V17.2 interactive account cards */
.lp-account-card-clickable{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.lp-account-card-clickable:hover,.lp-account-card-clickable:focus{transform:translateY(-2px);border-color:#d8b45a;box-shadow:0 12px 30px rgba(0,0,0,.28);outline:none}
.lp-account-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1rem}
.lp-account-actions .lp-mini,.lp-account-actions .lp-btn{flex:1 1 130px}
.lp-modal{position:fixed;inset:0;display:none;z-index:9999}
.lp-modal.show{display:block}
.lp-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76)}
.lp-modal-card{position:relative;max-width:560px;margin:8vh auto;padding:2rem;background:#0b141d;border:1px solid #6d5a2c;color:#f4ead2;max-height:84vh;overflow:auto}
.lp-modal-close{position:absolute;right:1rem;top:.75rem;border:0;background:transparent;color:#f4ead2;font-size:2rem;cursor:pointer}
@media(max-width:650px){.lp-account-actions{display:grid;grid-template-columns:1fr}.lp-modal-card{margin:3vh 1rem;padding:1.5rem;max-height:92vh}}

/* 2026-07-30 mobile operations repair */
@media (max-width: 760px){
  #panel-applications .lp-responsive{overflow:visible}
  #panel-applications .lp-table{min-width:0!important;display:block;white-space:normal;overflow:visible}
  #panel-applications .lp-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #panel-applications .lp-table tbody{display:grid;gap:14px}
  #panel-applications .admin-application-row{display:block;border:1px solid var(--line);background:#080d12;padding:14px}
  #panel-applications .admin-application-row td{display:grid;grid-template-columns:minmax(92px,34%) 1fr;gap:10px;align-items:start;border-bottom:1px solid #2f2b23;padding:10px 0;white-space:normal;overflow-wrap:anywhere}
  #panel-applications .admin-application-row td::before{content:attr(data-label);color:var(--muted);font:700 10px monospace;letter-spacing:.08em;text-transform:uppercase}
  #panel-applications .admin-application-row td:last-child{border-bottom:0}
  #panel-applications .admin-row-actions{display:flex!important;grid-template-columns:none!important;gap:8px;flex-wrap:wrap;padding-top:14px!important}
  #panel-applications .admin-row-actions::before{content:none!important}
  #panel-applications .admin-row-actions .lp-mini{flex:1 1 88px;min-height:44px;font-size:12px}
}

.lp-action-final{display:inline-block;padding:8px 10px;border:1px solid rgba(130,214,160,.45);color:var(--good);font:700 11px monospace;letter-spacing:.04em}.lp-action-final.lp-danger{border-color:rgba(255,155,155,.45);color:var(--bad)}

/* Joaquin Loera Master Build v1.3 — Client Portal mobile polish */
.sp-auth-access-bar{position:relative;z-index:30;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:9px 12px;background:#030508;border-bottom:1px solid rgba(213,177,92,.55);box-shadow:0 5px 18px rgba(0,0,0,.28);font-family:Arial,sans-serif}
.sp-auth-access-bar span{color:#b9a16e;font-size:10px;font-weight:800;letter-spacing:.16em;margin-right:4px}
.sp-auth-access-bar a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid #756033;border-radius:4px;color:#f2dda2;background:#0a0d12;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.06em;white-space:nowrap}
.sp-auth-access-bar a:hover,.sp-auth-access-bar a:focus-visible{background:#d0aa57;color:#090b0e;outline:2px solid #fff;outline-offset:2px}

.lp-head{min-height:72px;height:auto;gap:14px}
.lp-head nav{align-items:center;flex-wrap:wrap;justify-content:flex-end}
.lp-tabs{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.lp-tab{scroll-snap-align:start;flex:0 0 auto}
.lp-card{min-width:0}
.lp-table{max-width:100%}

@media(max-width:700px){
  .sp-auth-access-bar{gap:6px;padding:8px}
  .sp-auth-access-bar span{flex-basis:100%;text-align:center;margin:0}
  .sp-auth-access-bar a{flex:1 1 30%;padding:8px 6px;font-size:10px}
  .lp-head{position:relative;padding:12px;align-items:flex-start}
  .lp-brand{font-size:13px;line-height:1.35;max-width:58%}
  .lp-head nav{gap:8px}
  .lp-head nav .lp-btn{padding:9px 11px}
  .lp-shell{padding:18px 12px 48px;overflow-x:hidden}
  .lp-alert{font-size:12px;line-height:1.55;margin-bottom:14px}
  .lp-title{margin-bottom:16px}
  .lp-title h1{font-size:31px;line-height:1.08;overflow-wrap:anywhere}
  .lp-title p{line-height:1.55;overflow-wrap:anywhere}
  .lp-tabs{margin:0 -12px;padding:0 12px 12px;overscroll-behavior-x:contain}
  .lp-tab{min-height:46px}
  .lp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .lp-metric strong{font-size:23px;overflow-wrap:anywhere}
  .lp-layout{gap:12px;margin-top:12px}
  .lp-card{padding:14px;overflow:hidden}
  .lp-card h2{font-size:20px}
  .lp-card>.lp-table,.lp-card>.lp-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .lp-table{min-width:640px}
  #panel-overview .lp-layout:first-of-type .lp-card:first-child .lp-table,
  #panel-overview .lp-layout:nth-of-type(2) .lp-card:first-child .lp-table{min-width:560px}
  .lp-table th,.lp-table td{padding:10px;font-size:12px}
  .lp-account-card{padding:17px;min-height:0}
  .lp-account-number{font-size:.98rem;letter-spacing:.1em;overflow-wrap:anywhere}
  .lp-actions .lp-btn{min-height:46px}
}

@media(max-width:430px){
  .sp-auth-access-bar a{flex-basis:100%}
  .lp-head{flex-direction:column;align-items:stretch}
  .lp-brand{max-width:none;text-align:center}
  .lp-head nav{width:100%;justify-content:center}
  .lp-grid{grid-template-columns:1fr 1fr}
  .lp-metric{padding:12px}
  .lp-metric small{font-size:9px}
  .lp-metric strong{font-size:21px}
  .lp-title .lp-actions{display:grid;grid-template-columns:1fr}
  .lp-title .lp-actions .lp-btn{width:100%}
}


/* Joaquin Loera Master Build v1.4 — complete Client Portal pass */
.lp-session-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 18px}
.lp-session-strip>div{min-width:0;padding:13px 14px;border:1px solid rgba(212,173,91,.36);background:linear-gradient(145deg,#0c131b,#080d13)}
.lp-session-strip small{display:block;color:var(--muted);font:700 9px/1.3 ui-monospace,monospace;letter-spacing:.13em}
.lp-session-strip strong{display:block;margin-top:6px;color:var(--good);font-size:14px;overflow-wrap:anywhere}
.lp-session-strip strong.pending{color:#e8ca81}
.lp-session-strip strong.error{color:var(--bad)}
.sp-auth-access-bar.sp-auth-connected{justify-content:center;padding:10px 12px}
.sp-auth-access-bar.sp-auth-connected span:first-child{margin-right:8px}
.sp-auth-connected-state{display:inline-flex;align-items:center;gap:7px;color:#a6e5ba!important;font-size:11px!important;letter-spacing:.08em!important}
.sp-auth-connected-state::before{content:"";width:8px;height:8px;border-radius:999px;background:#82d6a0;box-shadow:0 0 12px rgba(130,214,160,.6)}
.lp-title .lp-actions{align-items:stretch}
.lp-title .lp-actions .lp-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center}
@media(max-width:900px){.lp-session-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){
  .lp-session-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .lp-session-strip>div:last-child{grid-column:1/-1}
  .lp-session-strip>div{padding:11px 12px}
  .lp-session-strip strong{font-size:13px}
  .lp-title .lp-actions{display:grid;grid-template-columns:1fr;width:100%}
  .lp-title .lp-actions .lp-btn{width:100%;min-height:54px}
  .lp-tabs{border-top:1px solid rgba(212,173,91,.18);border-bottom:1px solid rgba(212,173,91,.18);padding-top:10px}
  .lp-tab{min-width:max-content}
}

/* TMM Build 003 — institutional portal layer */
.lp-eyebrow{margin:0 0 7px;font-size:11px;font-weight:800;letter-spacing:.18em;color:#6d7d8d}.lp-quickbar{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 18px}.lp-quick{appearance:none;text-align:left;background:#fff;border:1px solid #d9e0e7;border-radius:5px;padding:18px;cursor:pointer;box-shadow:0 4px 14px rgba(5,25,45,.05)}.lp-quick:hover{border-color:#8fa5b9;transform:translateY(-1px)}.lp-quick b,.lp-quick span{display:block}.lp-quick b{font-size:15px;margin-bottom:5px;color:#0b2239}.lp-quick span{font-size:12px;color:#637383;line-height:1.45}.lp-gateboard{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9e0e7;border:1px solid #d9e0e7;margin:0 0 18px}.lp-gateboard div{background:#fff;padding:15px}.lp-gateboard small,.lp-gateboard strong{display:block}.lp-gateboard small{font-size:10px;letter-spacing:.15em;color:#708090;margin-bottom:5px}.lp-gateboard strong{font-size:13px;color:#0b2239}@media(max-width:850px){.lp-quickbar,.lp-gateboard{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.lp-quickbar,.lp-gateboard{grid-template-columns:1fr}}


/* Build 051 — accessible banking navigation */
.lp-skip-link{position:fixed;left:12px;top:8px;z-index:9999;transform:translateY(-150%);padding:10px 14px;background:#fff;color:#071522;border:2px solid #d4ad5b;font-weight:800;text-decoration:none}
.lp-skip-link:focus{transform:translateY(0)}
.lp-tab:focus-visible,.lp-quick:focus-visible,.lp-btn:focus-visible{outline:3px solid #d4ad5b;outline-offset:3px}
.lp-tab[aria-selected="true"]{font-weight:800}
.lp-panel[hidden]{display:none!important}
@media(max-width:680px){
  .lp-tabs{display:flex!important;overflow-x:auto!important;gap:8px!important;padding:10px 12px 12px!important;scroll-padding-inline:12px}
  .lp-tab{min-width:max-content!important;min-height:48px!important;padding:11px 14px!important}
  .lp-quickbar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:430px){.lp-quickbar{grid-template-columns:1fr!important}}
