.portal-access{max-width:1120px;margin:25px auto;display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;border-radius:26px;background:linear-gradient(135deg,#0d3037,#10565a);box-shadow:0 28px 70px rgba(13,48,55,.16)}
.portal-access-copy{padding:64px;color:#fff}.portal-access-copy h1{max-width:620px;font-size:46px;letter-spacing:-1.8px}.portal-access-copy>p{max-width:590px;color:#c5d9d6;font-size:17px}.portal-trust-list{display:grid;gap:12px;margin-top:34px}.portal-trust-list>div{display:grid;grid-template-columns:38px 1fr;gap:2px 12px;padding:12px 0;border-top:1px solid rgba(255,255,255,.12)}.portal-trust-list span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(210,235,137,.15);color:#d2eb89;font-weight:800}.portal-trust-list strong,.portal-trust-list small{display:block}.portal-trust-list small{color:#a9c3c0}
.portal-access-card{align-self:center;margin:32px;padding:34px;border-radius:20px;background:#fff}.portal-access-card h2{font-size:26px;margin:18px 0 8px}.portal-access-card p,.portal-access-card>small{color:var(--muted)}.portal-access-card button{width:100%;margin:4px 0 16px}.portal-lock{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e8f5d0;color:#315c38;font-size:22px;font-weight:900}
.portal-verify{max-width:520px;margin:48px auto;padding:42px;border:1px solid var(--line);border-radius:22px;background:#fff;text-align:center;box-shadow:0 24px 55px rgba(17,46,53,.08)}.portal-verify-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 20px;border-radius:17px;background:var(--navy);color:var(--lime);font-size:12px;font-weight:900;letter-spacing:1px}.portal-verify p{color:var(--muted)}.portal-verify label{text-align:left}.portal-verify button{width:100%;margin-bottom:18px}.portal-code-input{text-align:center;font-size:28px;font-weight:800;letter-spacing:10px}
.portal-dashboard{max-width:1180px;margin:0 auto}.portal-dashboard-head,.portal-section-head,.portal-application-top,.portal-application-foot,.portal-loan-head{display:flex;justify-content:space-between;gap:24px;align-items:center}.portal-dashboard-head{padding:34px 38px;border-radius:22px;background:linear-gradient(135deg,#0d3037,#087f75);color:#fff}.portal-dashboard-head p{margin:0;color:#c2d9d6}.portal-dashboard-head form{margin:0}.portal-dashboard-head .quiet{background:rgba(255,255,255,.13);color:#fff;border:1px solid rgba(255,255,255,.18)}
.portal-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0 34px}.portal-stat-grid article{padding:22px;border:1px solid var(--line);border-radius:15px;background:#fff}.portal-stat-grid small,.portal-stat-grid span{display:block;color:var(--muted)}.portal-stat-grid strong{display:block;margin:5px 0;font-size:27px;letter-spacing:-.8px}.portal-stat-grid span{font-size:11px}
.portal-section{margin-bottom:34px}.portal-section-head{margin-bottom:16px}.portal-section-head h2{margin:0}.portal-section-head .lead-kicker{color:var(--teal);margin-bottom:6px}.portal-application-list{display:grid;gap:14px}.portal-application-card,.portal-loan-card{padding:26px;border:1px solid var(--line);border-radius:17px;background:#fff}.portal-application-top h3,.portal-loan-head h3{margin:8px 0 2px;font-size:20px}.portal-application-top p,.portal-loan-head p{margin:0;color:var(--muted);font-size:12px}.portal-application-top>div:last-child{text-align:right}.portal-application-top>div:last-child strong,.portal-application-top>div:last-child small{display:block}.portal-application-top>div:last-child strong{font-size:19px}.portal-application-top>div:last-child small{color:var(--muted)}
.portal-progress{display:grid;grid-template-columns:repeat(4,1fr);margin:25px 0}.portal-progress>div{position:relative;text-align:center}.portal-progress>div:before{content:"";position:absolute;left:0;right:0;top:16px;height:2px;background:#e1e9e5}.portal-progress>div:first-child:before{left:50%}.portal-progress>div:last-child:before{right:50%}.portal-progress span{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;margin:0 auto 7px;border:2px solid #dce6e1;border-radius:50%;background:#fff;color:var(--muted);font-size:11px;font-weight:800}.portal-progress small{color:var(--muted)}.portal-progress .done span{border-color:var(--teal);background:var(--teal);color:#fff}.portal-progress .current span{border-color:#b8d967;background:#eff8d6;color:#315c38;box-shadow:0 0 0 5px rgba(184,217,103,.17)}.portal-application-foot{padding-top:15px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.portal-loan-card{margin-bottom:16px}.portal-balance{text-align:right}.portal-balance small,.portal-balance strong{display:block}.portal-balance small{color:var(--muted)}.portal-balance strong{font-size:24px}.portal-loan-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:24px 0;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.portal-loan-summary>div{padding:18px;background:#f8fbf9}.portal-loan-summary small,.portal-loan-summary strong,.portal-loan-summary span{display:block}.portal-loan-summary small,.portal-loan-summary span{color:var(--muted)}.portal-loan-summary strong{margin:4px 0;font-size:17px}.portal-loan-summary span{font-size:11px}.portal-details{border-top:1px solid var(--line)}.portal-details summary{padding:16px 4px;cursor:pointer;font-weight:750;color:var(--teal)}.portal-details .table-wrap{margin-bottom:12px}.portal-pending-note,.portal-empty{padding:24px;border:1px dashed #cbd9d2;border-radius:13px;background:#f8fbf9;color:var(--muted)}
.otp-confirmation-card{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;margin-top:24px;padding:28px;border:1px solid #cbdc93;border-radius:17px;background:#f6fbe8}.otp-confirmation-card .lead-kicker{color:#5a7627;margin-bottom:7px}.otp-confirmation-card h2{margin-bottom:7px}.otp-confirmation-card p{margin:0;color:var(--muted)}.otp-inline-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.otp-inline-form label{margin:0}.otp-inline-form input{font-size:21px;font-weight:800;letter-spacing:6px}.otp-inline-form button{height:48px}.otp-resend-form{margin-top:8px;text-align:right}.otp-resend-form button{padding:6px 10px;background:transparent}
.request-success-icon.sms{font-size:11px;letter-spacing:1px}.badge.unconfirmed{background:#fff2cf;color:#7b5a14}
@media(max-width:850px){.portal-access{grid-template-columns:1fr}.portal-access-copy{padding:42px}.portal-access-card{margin-top:0}.portal-stat-grid{grid-template-columns:1fr 1fr}.otp-confirmation-card{grid-template-columns:1fr}.portal-dashboard-head{align-items:flex-start}.portal-loan-summary{grid-template-columns:1fr}}
@media(max-width:600px){.portal-access{margin:0}.portal-access-copy{padding:32px 24px}.portal-access-copy h1{font-size:34px}.portal-access-card{margin:0 14px 14px;padding:26px}.portal-stat-grid{grid-template-columns:1fr 1fr}.portal-dashboard-head,.portal-section-head,.portal-application-top,.portal-application-foot,.portal-loan-head{align-items:flex-start;flex-direction:column}.portal-application-top>div:last-child,.portal-balance{text-align:left}.portal-progress small{font-size:9px}.portal-application-card,.portal-loan-card{padding:20px}.otp-inline-form{grid-template-columns:1fr}.otp-inline-form button{width:100%}.portal-verify{margin:18px auto;padding:28px 22px}}
