/* Tenant-facing presentation: welcoming estate context, clear money and one next step. */
#tenantPortal{background:#f7f8f6;color:#24332c;font-family:Archivo,Arial,sans-serif;line-height:1.5}
#tenantPortal h1,#tenantPortal h2,#tenantPortal h3{font-family:inherit;font-weight:550;letter-spacing:-.35px}
#tenantPortal h2{font-size:17px;line-height:1.4}#tenantPortal h3{font-size:15px;line-height:1.5}
#tenantPortal .info-card{padding:24px;background:#fff;border:1px solid #e3e8e3;border-radius:16px;min-width:0}
#tenantPortal .section-label{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 10px}
#tenantPortal .section-label h2{font-size:16px;margin:0;font-weight:550}
#tenantPortal .tenant-focus-button{font-size:11px;font-weight:500;color:#547061;padding:7px 0;white-space:nowrap;background:none}
#tenantPortal .portal-header{min-height:80px;background:#fff;border-bottom:1px solid #e7ebe6;padding:18px max(24px,calc((100% - 1136px)/2))}
#tenantPortal .portal-estate-brand{gap:23px}#tenantPortal .portal-estate-brand>img{width:92px;height:30px}
#tenantPortal .portal-estate-brand>span{border-left:1px solid #e0e6df;padding-left:23px}
#tenantPortal .portal-estate-brand b{font-size:15px;font-weight:550;letter-spacing:-.25px}#tenantPortal .portal-estate-brand small{font-size:11px;color:#7d897f}
.portal-header-account{display:flex;align-items:center;gap:22px}.portal-header-help{font:inherit;font-size:12px;color:#617466;background:transparent;padding:9px 0}
#tenantPortal .portal-header .btn{font-size:11px;min-height:38px;padding:9px 15px;border:1px solid #dfe5df;background:#fff;border-radius:9px;color:#495d4e;font-weight:500}
.portal-nav-surface{background:white;border-bottom:1px solid #e4e9e3}
#tenantPortal .portal-navigation{max-width:1184px;margin:auto;border:0;padding:12px 24px;gap:7px}
#tenantPortal .portal-navigation button{font-size:12px;font-weight:450;padding:10px 15px;min-height:39px;border-radius:9px;color:#7b877e}
#tenantPortal .portal-navigation button.selected{color:#2b4131;background:var(--accent-soft);font-weight:550}
#tenantPortal .portal-content{max-width:1184px;padding:28px 24px 22px}
.portal-welcome-grid{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(300px,1fr);gap:20px;margin-bottom:20px;align-items:stretch}
.portal-welcome{position:relative;isolation:isolate;border-radius:18px;overflow:hidden;background:var(--accent-soft);border:1px solid #dfe6dc;min-height:268px;display:flex;align-items:center}
.portal-welcome::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--accent-soft) 40%,transparent 100%);z-index:-1}
.portal-welcome.has-photo::after{background:linear-gradient(90deg,var(--accent-soft) 38%,var(--accent-soft) 46%,transparent 100%)}
.portal-welcome-photo{position:absolute;right:0;top:0;bottom:0;height:100%;width:49%;object-fit:cover;object-position:50% 50%;z-index:-2}
.portal-welcome-copy{padding:30px 28px;width:80%;position:relative;z-index:1}.portal-welcome-kicker{display:block;font-size:10px;letter-spacing:.02em;color:#61715a;margin-bottom:22px}
.portal-welcome-copy>p{font-size:13px;color:#62715f;margin:0 0 8px}
#tenantPortal .portal-welcome h1{font-size:29px;line-height:1.22;letter-spacing:-.8px;font-weight:550;margin:0;max-width:440px;overflow-wrap:anywhere;color:#22332a}
.portal-space-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px;max-width:90%}.portal-space-tags>span{font-size:10px;font-weight:450;color:#64725e;background:#ffffffb8;border:1px solid #dee5d6;padding:5px 8px;border-radius:6px;line-height:1.4}
.portal-welcome-caption{position:absolute;right:12px;bottom:12px;font-size:9px;color:#3b4c3f;background:#fffffff0;border-radius:6px;padding:5px 8px;max-width:45%;text-align:right;line-height:1.4}
.portal-balance-card{background:#fff;border:1px solid #e0e7de;border-radius:18px;padding:24px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.portal-balance-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:500;color:#748170;margin-bottom:10px}.portal-balance-symbol{width:30px;height:30px;border-radius:50%;background:#eef5ee;color:#557e57;display:flex;align-items:center;justify-content:center;font-size:14px}
.portal-balance-symbol svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}.has-balance .portal-balance-symbol{background:var(--accent-soft);color:var(--accent-dark)}
#tenantPortal .portal-balance-amount{display:block;font-size:33px;line-height:1.2;font-weight:550;letter-spacing:-1px;color:#263b2c}.portal-balance-card>p{font-size:11px;color:#84907f;line-height:1.65;margin:10px 0 20px;min-height:18px}
#tenantPortal .portal-balance-amount.account-overdue{color:#b7443d}
#tenantPortal .portal-primary-button{display:flex;align-items:center;justify-content:center;gap:13px;width:100%;min-height:46px;padding:13px 18px;border:1px solid #253d2e;border-radius:10px;background:#253d2e;color:#fff;font:inherit;font-size:12px;font-weight:500;box-shadow:0 3px 6px #1c30230a}
#tenantPortal .portal-primary-button:hover{background:#35543f}.portal-primary-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}
.portal-payment-options{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:13px;font-size:9px;color:#91998b;flex-wrap:wrap;line-height:1.5}.portal-payment-options i{width:3px;height:3px;background:#bac3b5;border-radius:50%;flex:none}
.portal-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:25px}
.portal-service-card{display:flex;align-items:center;gap:12px;width:100%;min-width:0;text-align:left;padding:18px;border:1px solid #e3e8e1;border-radius:13px;background:#fff;color:#344838;font:inherit;cursor:pointer}
.portal-service-card .suite-icon{width:34px;height:34px;border-radius:10px;background:#f1f5ed;color:#6e835f}.portal-service-card .suite-icon svg{width:17px;height:17px}
.portal-service-card>span:nth-child(2){flex:1;min-width:0}.portal-service-card b{font-size:12px;line-height:1.5;font-weight:550;display:block}.portal-service-card small{font-size:10px;line-height:1.6;color:#8b9586;display:block;margin-top:4px}.portal-service-card>svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;color:#a4afa0;flex-shrink:0}
.portal-service-card:hover{border-color:#bdcdb6;background:#fdfefb}.portal-account-grid{display:grid;grid-template-columns:1.16fr 1fr;gap:20px;align-items:start;margin-bottom:20px}
.portal-clear-message{display:flex;gap:14px;align-items:flex-start;padding:24px 0 13px;min-height:120px}.portal-clear-message>span{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:#edf5eb;color:#62845a;font-size:15px}.portal-clear-message h3{font-size:14px!important;margin:2px 0 6px!important;letter-spacing:0!important;color:#3f5841}.portal-clear-message p{font-size:11px;line-height:1.8;max-width:280px;color:#8a9683;margin:0}
.portal-recent-payment{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #eef0eb}.portal-recent-payment:last-child{border:0}.portal-receipt-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#f1f6ee;color:#79916b;flex-shrink:0}.portal-receipt-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}.portal-recent-payment>span:nth-child(2){flex:1;min-width:0}.portal-recent-payment b{display:block;font-size:11px;font-weight:500;color:#4a5d4a}.portal-recent-payment small{display:block;font-size:9px;line-height:1.7;color:#8b9784;margin-top:3px}.portal-recent-payment>strong{text-align:right;font-size:12px;font-weight:550;white-space:nowrap;color:#486540}.portal-recent-payment>strong small{font-weight:400}.portal-quiet-copy{font-size:12px;color:#8b9784;line-height:1.8;margin:20px 0}
.portal-help-strip{display:flex;gap:16px;align-items:center;padding:22px 24px;border:1px solid #dfe7da;background:#eef4e9;border-radius:14px}.portal-help-icon{width:39px;height:39px;display:flex;align-items:center;justify-content:center;background:#e0ead8;color:#638052;border-radius:12px;flex-shrink:0}.portal-help-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.portal-help-strip>div{flex:1;min-width:0}#tenantPortal .portal-help-strip h2{font-size:14px;margin:0 0 4px;font-weight:550}.portal-help-strip p{font-size:11px;color:#8b9682;line-height:1.8;margin:0}#tenantPortal .portal-help-strip .btn{min-height:40px;font-size:11px;background:#ffffffa8;color:#536b47;border:1px solid #cfdcc7;border-radius:9px;padding:11px 14px;white-space:nowrap}
.portal-footer{display:flex;justify-content:space-between;gap:20px;padding-top:23px;font-size:9px;line-height:1.7;color:#a3ad9d}
#tenantPortal .portal-content>.suite-page-heading{margin:2px 0 24px}.portal-page-kicker{font-size:9px;letter-spacing:1px;color:#8d9985;display:block;margin-bottom:8px}#tenantPortal .suite-page-heading h1{font-size:27px;letter-spacing:-.7px;margin:0 0 9px;font-weight:550}#tenantPortal .suite-page-heading p{font-size:12px;color:#8a9583}
.portal-bills-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;border:1px solid #e0e7da;background:#fff;border-radius:14px;margin-bottom:20px;padding:19px 6px}.portal-bills-summary>div{padding:0 20px;border-right:1px solid #e9ede5;min-width:0}.portal-bills-summary>div:last-child{border:0}.portal-bills-summary small{display:block;font-size:10px;color:#8b9784;margin-bottom:8px}.portal-bills-summary strong{display:block;font-size:20px;line-height:1.4;font-weight:550;letter-spacing:-.4px}.portal-bills-summary>div:not(:first-child) strong{font-size:16px;letter-spacing:-.2px}.portal-bills-summary button{padding:0;border:0;background:none;font:inherit;color:#557247;font-size:12px;line-height:1.5}.portal-positive{color:#5d8052}
.portal-bill-filters{display:flex;align-items:center;gap:6px;margin:0 0 7px;padding-bottom:17px;border-bottom:1px solid #edf0e8}.portal-bill-filters>button{display:flex;gap:7px;padding:8px 13px;border:0;border-radius:8px;background:transparent;font:inherit;font-size:11px;color:#8a9681}.portal-bill-filters>button.selected{background:var(--accent-soft);color:#54643e}.portal-bill-filters>button>span{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;border-radius:4px;background:#fff9;font-size:9px}
#tenantPortal .portal-list-row{padding:18px 0;gap:12px;border-color:#edf0e8}#tenantPortal .portal-list-row .suite-icon{width:32px;height:32px;border-radius:9px;background:#f3f6ed;color:#879673}#tenantPortal .portal-list-row b{font-size:12px;font-weight:500;color:#4d6049}#tenantPortal .portal-list-row small{font-size:10px;color:#8f9a86}#tenantPortal .portal-row-amount{font-size:14px;font-weight:550;color:#506748}#tenantPortal .portal-row-amount.account-overdue{color:#b84b40}
.portal-help-dialog h3{font-size:22px;font-weight:550;letter-spacing:-.4px;margin:17px 0 8px}.portal-help-dialog>p{font-size:12px;color:#7f8d78;line-height:1.8;margin-bottom:20px}.portal-help-dialog .form-actions{flex-wrap:wrap}
@container (max-width:1000px){.portal-welcome-grid{grid-template-columns:minmax(0,1.2fr) minmax(270px,1fr)}#tenantPortal .portal-welcome h1{font-size:25px}.portal-welcome-copy{padding:25px}.portal-service-card{padding:15px;gap:10px}.portal-service-card>svg{display:none}.portal-service-card small{font-size:9px}.portal-help-strip{padding:20px;gap:12px}}
@container (max-width:760px){
 #tenantPortal .portal-header{min-height:72px;padding:15px 16px;gap:10px}#tenantPortal .portal-estate-brand{gap:11px}#tenantPortal .portal-estate-brand>img{width:66px;height:25px}#tenantPortal .portal-estate-brand>span{padding-left:11px}#tenantPortal .portal-estate-brand b{font-size:12px;line-height:1.4;max-width:165px}#tenantPortal .portal-estate-brand small{font-size:9px}.portal-header-account{gap:8px}.portal-header-help{display:none}#tenantPortal .portal-header .btn{font-size:10px;min-height:34px;padding:8px 10px}
 #tenantPortal .portal-navigation{padding:10px 16px;gap:4px}#tenantPortal .portal-navigation button{font-size:11px;min-height:36px;padding:9px 12px}#tenantPortal .portal-content{padding:19px 16px 20px}
 .portal-welcome-grid{grid-template-columns:1fr;gap:13px;margin-bottom:16px}.portal-welcome{min-height:186px;border-radius:15px}.portal-welcome-copy{padding:23px;width:88%}.portal-welcome-kicker{font-size:9px;margin-bottom:15px}.portal-welcome-copy>p{font-size:11px;margin-bottom:7px}#tenantPortal .portal-welcome h1{font-size:24px;max-width:285px;line-height:1.22}.portal-welcome-caption{display:none}.portal-space-tags{margin-top:13px;max-width:88%;gap:5px}.portal-space-tags>span{font-size:9px;padding:4px 6px}.portal-welcome-photo{width:44%}.portal-welcome.has-photo::after{background:linear-gradient(90deg,var(--accent-soft) 35%,var(--accent-soft) 50%,transparent 100%)}
 .portal-balance-card{padding:21px;border-radius:15px}.portal-balance-top{font-size:11px;margin-bottom:8px}.portal-balance-symbol{width:27px;height:27px}#tenantPortal .portal-balance-amount{font-size:31px}.portal-balance-card>p{font-size:11px;margin:8px 0 17px}#tenantPortal .portal-primary-button{min-height:46px;font-size:12px}.portal-payment-options{font-size:9px;margin-top:12px;gap:8px}
 .portal-service-grid{grid-template-columns:1fr;gap:9px;margin-bottom:18px}.portal-service-card{padding:14px 16px;gap:12px;border-radius:12px}.portal-service-card .suite-icon{width:32px;height:32px}.portal-service-card b{font-size:12px}.portal-service-card small{font-size:10px;margin-top:2px}.portal-service-card>svg{display:block}.portal-account-grid{grid-template-columns:1fr;gap:13px;margin-bottom:16px}#tenantPortal .info-card{padding:20px;border-radius:14px}#tenantPortal .section-label h2{font-size:15px}#tenantPortal .tenant-focus-button{font-size:10px}.portal-clear-message{padding:20px 0 6px;min-height:105px}.portal-clear-message p{font-size:11px}.portal-recent-payment{padding:15px 0}.portal-recent-payment b{font-size:11px}.portal-recent-payment>strong{font-size:12px}.portal-recent-payment small{font-size:9px}
 .portal-help-strip{padding:20px;gap:12px;flex-wrap:wrap;border-radius:13px}.portal-help-strip>div{min-width:200px}#tenantPortal .portal-help-strip h2{font-size:13px}.portal-help-strip p{font-size:11px;line-height:1.7}#tenantPortal .portal-help-strip .btn{width:100%;margin-top:3px;min-height:42px}.portal-help-icon{width:32px;height:32px;border-radius:10px}.portal-help-icon svg{width:18px;height:18px}.portal-footer{font-size:9px;flex-direction:column;gap:4px;padding-top:20px}
 #tenantPortal .suite-page-heading h1{font-size:25px}.portal-bills-summary{grid-template-columns:1fr 1fr;padding:17px 0;gap:16px 0}.portal-bills-summary>div{padding:0 16px}.portal-bills-summary>div:nth-child(2){border:0}.portal-bills-summary>div:last-child{grid-column:1/-1;border-top:1px solid #edf0e8;padding-top:14px;display:flex;justify-content:space-between;align-items:center}.portal-bills-summary>div:last-child small{margin:0}.portal-bills-summary strong{font-size:19px}.portal-bills-summary>div:not(:first-child) strong{font-size:14px}.portal-bills-summary small{font-size:10px}.portal-bills-summary button{font-size:11px}.portal-bill-filters>button{font-size:11px;padding:8px 11px}#tenantPortal .portal-list-row{gap:10px}#tenantPortal .portal-list-row b{font-size:11px}#tenantPortal .portal-list-row small{font-size:9px}#tenantPortal .portal-row-amount{font-size:12px}#tenantPortal .portal-list-row .suite-icon{width:27px;height:27px}
}

/* Give identifiers room without adding cards or crowding their labels. */
@container (max-width:760px){
 #tenantPortal .portal-content .info-row{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:12px;padding-inline:0}
 #tenantPortal .portal-content .info-row strong{min-width:0;overflow-wrap:anywhere}
 #tenantPortal .portal-list-row>span:nth-child(2){min-width:0}
 #tenantPortal .portal-list-row b,#tenantPortal .portal-list-row small{overflow-wrap:anywhere}
}
