/* Restoration layer for the approved Hlonyane tenant portal UI. */
.brand .portal-mark{width:30px;height:30px;object-fit:contain;background:transparent;border-radius:0;margin-left:-4px}.brand>a{display:flex}
.sidebar{overflow-y:auto}.sidebar .brand{display:flex;flex-direction:column;align-items:stretch;gap:11px;padding:0 0 30px}.sidebar .brand-logo{display:block;width:100%;overflow:hidden;border-radius:5px;background:transparent}.sidebar .brand-logo img{display:block;width:100%;height:auto;max-height:110px;object-fit:contain;background:transparent!important;border-radius:0}.sidebar .brand .portal-label{display:flex;align-items:center;gap:10px;padding:0 8px}.sidebar .brand .portal-label .portal-mark{flex:none;width:30px;height:30px;object-fit:contain;background:transparent;border-radius:0;margin:0}.sidebar .brand .portal-label span{font:700 14px Manrope;letter-spacing:.02em}.sidebar .side-footer{margin-top:24px}
.portal-modal-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:#13293dcc}.portal-modal{width:min(500px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:26px;box-shadow:0 22px 70px #07162480;position:relative}.portal-modal h3{font-size:22px;margin:0 30px 20px 0}.modal-close{position:absolute;right:16px;top:13px;border:0;background:none;color:var(--muted);font-size:28px;cursor:pointer}.modal-label{display:grid;gap:7px;margin:15px 0;color:var(--navy);font-weight:700;font-size:13px}.modal-label input,.modal-label select,.modal-label textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;font:inherit;font-weight:400;background:#fff}.modal-label textarea{resize:vertical}.modal-copy{color:var(--muted);line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
/* The old illustrated property placeholder is permanently disabled. Only real property photographs may appear here. */
.property-art{background:#eef2f3!important;min-height:195px}.property-art:before,.property-art:after{display:none!important;content:none!important}.property-art.photo-home{background:#eef2f3!important;min-height:195px}.property-art.photo-home .property-art-image{display:block;width:100%;height:100%;min-height:195px;object-fit:cover;position:absolute;inset:0}.property-art[hidden]{display:none!important}
.community-compose{max-width:760px;margin-bottom:18px}.community-compose .modal-label{margin-top:0}.post-list{display:grid;gap:14px;max-width:760px}.tenant-post{display:block}.tenant-post>div{display:flex;justify-content:space-between;color:var(--navy)}.tenant-post small{color:var(--muted);font-weight:400}.tenant-post p{font-size:16px;line-height:1.65;margin:14px 0;color:var(--ink)}.post-status{display:inline-block;background:#fff1d3;color:#9a6d0f;border-radius:20px;padding:6px 10px;font-size:12px;font-weight:700}.post-author{display:flex!important;align-items:center;justify-content:flex-start!important;gap:10px}.post-author>span:last-child{display:grid;gap:3px}.post-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dcebe5;color:var(--green);font-weight:800;overflow:hidden}.post-avatar img{width:100%;height:100%;object-fit:cover}
.homeaway-card{max-width:720px}.homeaway-status{display:flex;align-items:center;gap:10px;margin-bottom:22px;color:var(--navy);font-size:18px}.presence-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:#3e9c59;box-shadow:0 0 0 4px #e2f3e6}.presence-dot.away{background:#c96059;box-shadow:0 0 0 4px #f8e4e1}.homeaway-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.homeaway-fields label{display:grid;gap:6px;color:var(--muted);font-size:12px}.homeaway-fields input{border:1px solid var(--line);padding:12px;border-radius:7px;font:inherit}.homeaway-card .outline-btn{margin-left:10px}
.notice-form-card{max-width:720px}.notice-form-card>label{display:grid;gap:7px;color:var(--navy);font-weight:700}.notice-form-card input{border:1px solid var(--line);padding:12px;border-radius:7px;font:inherit}.notice-help{margin:16px 0}.notice-status{margin-bottom:18px}.notice-state{display:inline-block;border-radius:20px;padding:8px 12px;font-size:12px;font-weight:700}.notice-state.neutral{background:#eef1f3;color:var(--muted)}.notice-state.pending{background:#fff1d3;color:#9a6d0f}.notice-state.complete{background:#e2f4eb;color:var(--green)}
.header-actions .icon-btn{cursor:pointer}.page-title{align-items:flex-start}.payment-hero{margin-top:8px}.table .tr{grid-template-columns:1fr 2fr .8fr .8fr}.table .tr span:nth-child(3),.table .tr .status{justify-self:start;margin-left:0}.table .tr strong{justify-self:start;text-align:left}.payment-empty{padding:28px 21px;color:var(--muted);border-top:1px solid var(--line)}
.doc{position:relative}.doc .doc-copy-link{color:inherit;text-decoration:none;display:block}.doc .doc-copy-link:hover h3{text-decoration:underline}.doc .doc-action,.doc button{width:42px;height:42px;margin-left:auto;border:0;border-radius:10px;background:#fff6df!important;display:grid;place-items:center;cursor:pointer;box-shadow:none!important;text-decoration:none}.doc .doc-action:hover,.doc button:hover{background:#f6e6b6!important}.doc .doc-action img,.doc button img{width:26px;height:26px;object-fit:contain;display:block;filter:none}.doc .doc-action.disabled{opacity:.35;pointer-events:none}.download-symbol{font-size:24px;line-height:1;font-weight:800;transform:translateY(-1px)}
.profile-photo-picker{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:var(--gold);font-size:12px;font-weight:700;cursor:pointer}.profile-photo-picker input{display:none}.avatar.has-photo{overflow:hidden}.avatar.has-photo img{width:100%;height:100%;object-fit:cover}.message{cursor:pointer}.message:hover{background:#fffaf0}
.message-attachments{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.message-attachment{display:inline-flex;align-items:center;gap:6px;border:1px solid #dbe5df;border-radius:6px;padding:5px 8px;color:#1c5536;text-decoration:none;background:#f5faf6;font-size:12px}.message-attachment img{width:56px;height:42px;object-fit:cover;border-radius:4px}.message.unread{background:#fffdf5}
@media(max-width:650px){.homeaway-fields{grid-template-columns:1fr}.homeaway-card .outline-btn{margin:10px 0 0}.portal-modal{padding:22px 18px}.modal-actions{flex-wrap:wrap}.modal-actions button{flex:1}}
