@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap";:root{--gradient-primary: linear-gradient(135deg, #fb7185 0%, #ef4444 45%, #b91c1c 100%);--color-primary: #ef4444;--color-secondary: #dc2626;--color-text-dark: #2c3e50;--color-text-light: #666}html{scroll-behavior:smooth}body{font-family:Poppins,sans-serif}.gradient-text{background:var(--gradient-primary);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-8px);box-shadow:0 12px 40px #ef444440}@keyframes countUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.counter{animation:countUp .6s ease-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .6s ease-out}@keyframes glow{0%,to{box-shadow:0 0 20px #ef444480}50%{box-shadow:0 0 40px #ef4444cc}}.glow{animation:glow 2s ease-in-out infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rotate{animation:rotate 20s linear infinite}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.scale-in{animation:scaleIn .4s ease-out}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float{animation:float 3s ease-in-out infinite}@keyframes bounceIn{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.bounce-in{animation:bounceIn 2s ease-in-out infinite}.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:1000px 100%;animation:shimmer 2s infinite}@media(max-width:768px){h1{font-size:2rem!important}h2{font-size:1.5rem!important}h3{font-size:1.25rem!important}}.btn-hover{position:relative;overflow:hidden;transition:all .3s ease}.btn-hover:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-hover:hover:before{width:300px;height:300px}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.gradient-animated{background:linear-gradient(-45deg,#ef4444,#dc2626,#fb7185,#f87171);background-size:400% 400%;animation:gradientShift 15s ease infinite}.scroll-smooth{scroll-behavior:smooth!important}.text-hover{position:relative;transition:color .3s}.text-hover:after{content:"";position:absolute;width:100%;height:2px;bottom:0;left:0;background:var(--gradient-primary);transform:scaleX(0);transform-origin:bottom right;transition:transform .3s ease}.text-hover:hover:after{transform:scaleX(1);transform-origin:bottom left}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 2s infinite}.stagger-animation>*{animation:slideInFromBottom .5s ease-out backwards}.stagger-animation>*:nth-child(1){animation-delay:0s}.stagger-animation>*:nth-child(2){animation-delay:.1s}.stagger-animation>*:nth-child(3){animation-delay:.2s}.stagger-animation>*:nth-child(4){animation-delay:.3s}.stagger-animation>*:nth-child(5){animation-delay:.4s}.stagger-animation>*:nth-child(6){animation-delay:.5s}.parallax{background-attachment:fixed;background-position:center;background-repeat:no-repeat;background-size:cover}.transition-all{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-colors{transition:color .3s,background-color .3s,border-color .3s}.transition-transform{transition:transform .3s cubic-bezier(.4,0,.2,1)}.transition-opacity{transition:opacity .3s}@media print{.no-print{display:none}}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;min-height:100vh}body{font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:#f8f8f8;color:#111}.app-shell{min-height:100vh;display:flex;background:linear-gradient(135deg,#fff,#f5f5f5)}.sidebar{width:250px;background:radial-gradient(circle at top,#1b1b1b,#0b0b0b 60%);color:#fff;padding:1.5rem 1rem;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand-header{display:flex;align-items:center;gap:.75rem;padding-bottom:1.1rem;margin-bottom:1.2rem;border-bottom:1px solid rgba(255,255,255,.08)}.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:12px;background:#fff;padding:.35rem;box-shadow:0 8px 20px #00000040}.brand{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:.3px}.sidebar-subtitle{margin:.25rem 0 0;color:#ccc;font-size:.9rem}.sidebar-nav{display:flex;flex-direction:column;gap:.45rem}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.profile-card{display:flex;align-items:center;gap:.7rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);padding:.65rem .75rem;border-radius:14px}.profile-avatar{width:42px;height:42px;border-radius:12px;background:#fff;display:grid;place-items:center}.profile-avatar img{width:28px;height:28px;object-fit:contain}.profile-meta{display:flex;flex-direction:column}.profile-name{margin:0;font-size:.9rem;font-weight:700;color:#fff}.profile-email{margin:.15rem 0 0;font-size:.78rem;color:#ffffffa6}.signout-button{border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#f3f3f3;padding:.55rem .85rem;border-radius:10px;cursor:pointer;text-align:left;font-weight:600}.signout-button:hover{background:#ffffff1f}.nav-item{color:#f3f3f3;text-decoration:none;padding:.75rem .85rem;border-radius:12px;border:1px solid transparent;display:flex;align-items:center;gap:.55rem;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.nav-item:hover{background:#ffffff14;border-color:#ffffff24;transform:translate(2px)}.nav-item.active{background:#d90429;border-color:#ff3b5c;color:#fff;font-weight:700}.content-wrap{flex:1;padding:1.5rem 2rem}.login-shell{align-items:center;justify-content:center}.login-content{display:flex;justify-content:center;align-items:center;padding:2rem}.login-page{width:100%;display:flex;justify-content:center;align-items:center}.login-card{width:min(920px,100%);background:linear-gradient(140deg,#fff,#f6f6f6);border:1px solid #ececec;border-radius:16px;padding:0;box-shadow:0 18px 40px #0000001f;overflow:hidden}.login-grid{display:grid;grid-template-columns:1.05fr .95fr}.login-panel{background:linear-gradient(160deg,#111,#1e1e1e);color:#fff;padding:2.2rem 2.4rem}.login-brand{display:flex;align-items:center;gap:.9rem;margin-bottom:2.2rem}.login-logo{width:58px;height:58px;object-fit:contain;border-radius:14px;background:#fff;padding:.45rem;box-shadow:0 10px 30px #0000004d}.login-brand h1{margin:0;font-size:1.55rem}.login-brand p{margin:.25rem 0 0;color:#ffffffa6}.login-pitch h2{margin:0 0 .6rem;font-size:1.4rem}.login-pitch p{margin:0 0 1.4rem;color:#ffffffb8;line-height:1.5}.login-metrics{display:grid;gap:.75rem}.login-metrics div{display:flex;justify-content:space-between;padding:.75rem 1rem;border-radius:12px;background:#ffffff14;font-size:.95rem}.login-form{padding:2.2rem 2.2rem 2.6rem;background:#fff}.login-form h2{margin:0 0 .4rem;font-size:1.4rem}.login-footer{margin-top:1rem;text-align:center}.login-card .form button:disabled{opacity:.7;cursor:not-allowed}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin:1rem 0}.card{background:#fff;border:1px solid #ececec;border-left:4px solid #d90429;border-radius:12px;padding:1rem 1.05rem;box-shadow:0 6px 18px #0000000f}.muted{color:#666}.quick-actions{display:flex;gap:1rem;flex-wrap:wrap}.quick-actions a{color:#b3001b;text-decoration:none;font-weight:600}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid #ededed;text-align:left;padding:.65rem}.table th{background:#111;color:#fff}.warning{color:#a30018}.success{color:#0a7d2b}.loader{width:32px;height:32px;border-radius:50%;border:3px solid rgba(0,0,0,.12);border-top-color:#d90429;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:1000px 100%;animation:shimmer 2s infinite;border-radius:4px}.dashboard-value-shimmer{height:32px;width:60%}.list-reset{margin:0;padding-left:1rem}.form{max-width:520px;display:grid;gap:.85rem}.form label{display:grid;gap:.35rem}.form input[type=text],.form input[type=email]{width:100%;padding:.55rem;border:1px solid #d8d8d8;border-radius:8px}.form input[type=number],.form select,.form textarea{width:100%;padding:.55rem;border:1px solid #d8d8d8;border-radius:8px;font-family:inherit}.form textarea{resize:vertical}.checkbox-row{display:flex!important;gap:.5rem;align-items:center}.form button{width:fit-content;border:0;border-radius:8px;padding:.6rem .9rem;background:#d90429;color:#fff;cursor:pointer}.form button.secondary{background:#ececec;color:#111}.form button.secondary:hover{background:#dcdcdc}.form button:hover{background:#b3001b}@media(max-width:900px){.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:static;border-right:0;border-bottom:3px solid #d90429}.sidebar-nav{flex-direction:row;flex-wrap:wrap}.content-wrap{padding:1rem}.login-grid{grid-template-columns:1fr}.login-panel,.login-form{padding:1.8rem}}.user-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#f7f7f7,#f2f2f2);padding:1rem}.user-login-card{width:min(430px,100%);border-radius:16px!important;padding:1.4rem 1.3rem}.user-app-shell{background:linear-gradient(135deg,#fff,#f5f5f5)}.user-sidebar .nav-item.active{background:#d90429;border-color:#ff3b5c}.user-content-wrap{padding:1.5rem 2rem}.user-mobile-topbar{display:none}.user-mobile-menu-btn{width:36px;height:36px;border:1px solid #ececec;border-radius:10px;background:#fff;color:#d90429;display:grid;place-items:center;cursor:pointer}.user-mobile-backdrop{display:none}.user-page{max-width:1050px;display:flex;flex-direction:column;gap:1rem}.user-page-header{display:flex;align-items:center;justify-content:space-between}.user-page-header h1{margin:0;font-size:1.7rem;font-weight:800}.user-page-greeting{background:#fff;border:1px solid #ececec;border-left:4px solid #d90429;border-radius:12px;padding:1rem 1.05rem;box-shadow:0 6px 18px #0000000f}.user-page-greeting h2{margin:0;font-size:1.6rem}.user-page-greeting p{margin:.45rem 0 0;display:flex;align-items:center;gap:.35rem;color:#666}.user-section-title{margin:.25rem 0;font-size:1.2rem}.user-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.user-stat-card{background:#fff;border:1px solid #ececec;border-left:4px solid #d90429;border-radius:12px;padding:1rem 1.05rem;box-shadow:0 6px 18px #0000000f}.user-stat-card h4{margin:.6rem 0 0;font-size:1.8rem}.user-stat-card p{margin:.25rem 0 0;color:#666;font-size:.95rem}.user-danger{color:#d92237}.user-info{color:#1a80da}.user-success{color:#2f9e44}.user-accent{color:#8a33bc}.user-finance-card{background:#fff;border:1px solid #ececec;border-left:4px solid #d90429;border-radius:12px;padding:1rem 1.05rem;display:flex;align-items:center;gap:.9rem;box-shadow:0 6px 18px #0000000f}.user-finance-card h3{margin:.2rem 0;font-size:1.9rem}.user-dashboard-value-shimmer{display:inline-block;width:92px;height:32px}.user-finance-value-shimmer{width:180px;height:36px;margin:.2rem 0}.user-inline-value-shimmer{display:inline-block;width:36px;height:.95rem;vertical-align:middle;margin:0 .25rem}.user-finance-icon{width:54px;height:54px;border-radius:14px;background:#ffe4eb;color:#d9233b;display:grid;place-items:center}.user-search-box{background:#fff;border:1px solid #ececec;border-radius:12px;display:flex;align-items:center;gap:.65rem;padding:.7rem .85rem}.user-search-box input{width:100%;border:0;outline:0;background:transparent;font-size:.98rem}.user-list-cards{display:flex;flex-direction:column;gap:1rem}.user-list-card{background:#fff;border-radius:12px;border:1px solid #ececec;border-left:4px solid #d90429;padding:1rem 1.05rem;box-shadow:0 6px 18px #0000000f}.user-list-card-clickable{cursor:pointer}.user-list-card-clickable:hover{transform:translateY(-1px)}.user-list-card-clickable:focus-visible{outline:2px solid #d90429;outline-offset:2px}.user-list-card-skeleton{border-left-color:#ececec}.user-list-icon-skeleton,.user-avatar-badge-skeleton{color:transparent;border:0}.user-list-skeleton-meta{display:grid;gap:.5rem;width:min(420px,100%);flex:1}.user-line-skeleton{height:14px}.user-line-skeleton-title{height:24px;width:min(220px,70%)}.user-line-skeleton-subtitle{width:min(300px,88%)}.user-line-skeleton-rent{width:160px}.user-chip-grid-skeleton{pointer-events:none}.user-chip-skeleton{min-height:41px;border-color:transparent}.user-button-skeleton{width:98px;height:34px;border-radius:10px}.tenant-status-skeleton{width:76px;height:28px;border:0;background-color:transparent}.user-list-main{display:flex;align-items:center;gap:.85rem}.user-list-main h3{margin:0;font-size:1.35rem}.user-list-icon{width:52px;height:52px;border-radius:12px;background:#ffe4eb;color:#d9233b;display:grid;place-items:center}.user-chip-grid{margin-top:.85rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.user-chip{background:#fafafa;border:1px solid #e8e8e8;border-radius:12px;padding:.55rem .6rem;display:flex;align-items:center;gap:.35rem;color:#4e4e54;font-weight:600}.tenant-card .tenant-main{align-items:flex-start}.user-avatar-badge{width:48px;height:48px;border-radius:999px;background:#f4ccd8;color:#b92741;display:grid;place-items:center;font-weight:800;font-size:1.3rem}.tenant-meta{flex:1}.tenant-meta p{margin:.22rem 0;color:#4d4d54;display:flex;align-items:center;gap:.3rem}.tenant-rent{color:#b73144!important;font-weight:700}.tenant-status{border-radius:999px;padding:.38rem .7rem;font-weight:700;font-size:.75rem;border:1px solid transparent}.tenant-status.active{color:#2a8f3b;background:#ecf8ef;border-color:#9fd9aa}.tenant-status.inactive{color:#74747c;background:#f2f2f4;border-color:#d7d7de}.user-action-button{border:0;border-radius:10px;padding:.55rem .85rem;background:#ececec;color:#111;display:flex;align-items:center;gap:.5rem;width:fit-content;font-weight:600;cursor:pointer}.user-action-button.primary{background:#d90429;color:#fff}.user-action-button.primary:hover{background:#b3001b}.rent-summary-card{background:linear-gradient(135deg,#d90429,#b3001b);color:#fff;border-radius:12px;padding:1.15rem;box-shadow:0 12px 24px #9115253d}.rent-summary-card h3,.rent-summary-card h2,.rent-summary-card p{margin:0}.rent-summary-card h2{margin-top:.75rem;font-size:1.95rem}.rent-summary-card p{margin-top:.7rem;font-size:1.02rem}.rent-progress-track{margin-top:.75rem;height:9px;border-radius:999px;background:#ffffff59;overflow:hidden}.rent-progress-fill{height:100%;background:#fff}.pending-title{display:flex;align-items:center;gap:.25rem}.pending-card{display:flex;justify-content:space-between;align-items:center}.all-paid-state{margin:1.4rem 0;color:#2f9e44;display:grid;place-items:center;gap:.45rem}.all-paid-state svg{font-size:5rem}.all-paid-state h2{margin:0}.user-settings-card{max-width:780px}.user-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.user-settings-item{display:flex;align-items:flex-start;gap:.55rem;background:#fff;border:1px solid #ececec;border-radius:10px;padding:.7rem .8rem}.user-card-actions{margin-top:.8rem;display:flex;gap:.6rem;flex-wrap:wrap}.user-form-page{max-width:940px}.user-form-grid{background:#fff;border:1px solid #ececec;border-left:4px solid #d90429;border-radius:12px;padding:1rem;box-shadow:0 6px 18px #0000000f;display:grid;gap:.9rem}.user-form-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.user-form-actions{margin-top:.4rem;display:flex;justify-content:flex-end}.user-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.user-quick-card{border:1px solid #ececec;border-radius:12px;background:#fff;min-height:120px;padding:1rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;box-shadow:0 6px 18px #0000000f;cursor:pointer}.user-quick-card span{font-size:1.05rem;font-weight:700}.rent-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.rent-kpi-grid p{margin:0 0 .35rem;opacity:.86}.rent-kpi-grid h2{margin:0;font-size:1.65rem}.payments-filter-row{display:flex;gap:.65rem;flex-wrap:wrap}.property-details-page{gap:1.1rem}.property-details-title-wrap{display:flex;align-items:center;gap:.35rem}.property-details-card{background:#fff;border:1px solid #ececec;border-left:4px solid #d90429;border-radius:12px;padding:1rem 1.05rem;box-shadow:0 6px 18px #0000000f}.property-details-main{display:flex;align-items:center;gap:.85rem}.property-details-main h3{margin:0;font-size:1.45rem}.property-type-label{text-transform:capitalize;margin-top:.2rem}.property-location-row{display:flex;align-items:center;gap:.35rem;margin:.45rem 0 0}.property-management-button{border:1px solid #ececec;background:#fff;border-radius:12px;padding:.95rem 1rem;text-align:left;display:flex;align-items:center;gap:.75rem;width:100%;box-shadow:0 6px 18px #0000000f;cursor:pointer}.property-management-button span{display:flex;flex-direction:column;gap:.15rem}.property-management-button small{color:#6c6c74}.property-management-icon{width:44px;height:44px;border-radius:12px;background:#ffe4eb;color:#d9233b;display:grid;place-items:center}.property-section-header{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.lease-section{margin:1.5rem 0}.lease-section-title{font-size:1.1rem;font-weight:700;margin:0 0 .8rem;color:#111}.lease-info-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;border-left:5px solid #d90429;padding:1rem;box-shadow:0 2px 8px #0000000d}.lease-property-info{display:flex;align-items:center;gap:.8rem;margin-bottom:.8rem}.lease-property-info h4{margin:0;font-size:1.05rem;font-weight:600}.lease-property-info .user-list-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#f5f5f5;border-radius:12px;color:#d90429}.lease-property-info svg{font-size:1.5rem}.lease-row{display:flex;justify-content:space-between;align-items:center;padding:.6rem 0}.lease-row label{font-weight:600;color:#666;font-size:.95rem}.lease-value{margin:0;font-size:1rem;font-weight:500;color:#111}.lease-terms-text{margin:0;line-height:1.6;white-space:pre-wrap;word-break:break-word}.lease-form-card{display:flex;flex-direction:column;gap:1rem}.lease-form-row{display:flex;flex-direction:column;gap:.4rem}.lease-form-row input,.lease-form-row textarea{font-family:Inter,Segoe UI,Roboto,Arial,sans-serif}@media(max-width:640px){.user-content-wrap{padding:1rem}.user-form-inline-grid{grid-template-columns:1fr}.rent-kpi-grid{grid-template-columns:1fr;gap:.45rem}.user-page-header h1{font-size:1.25rem}.user-page-greeting h2{font-size:1.55rem}.user-section-title{font-size:1.05rem}.user-stat-card h4,.user-finance-card h3,.rent-summary-card h2{font-size:1.65rem}}@media(max-width:900px){.user-app-shell{position:relative;flex-direction:row}.user-sidebar{width:min(82vw,320px);height:100dvh;max-height:100dvh;position:fixed;top:0;left:0;z-index:1200;transform:translate(-100%);transition:transform .25s ease;border-right:2px solid #d90429;border-bottom:0;overflow-y:auto;box-shadow:8px 0 24px #0000002e}.user-sidebar .sidebar-nav{flex-direction:column;flex-wrap:nowrap}.user-app-shell.user-sidebar-open .user-sidebar{transform:translate(0)}.user-mobile-backdrop{display:none;position:fixed;inset:0;border:0;background:#0a0a0a73;z-index:1150;cursor:pointer}.user-app-shell.user-sidebar-open .user-mobile-backdrop{display:block}.user-content-wrap{padding:1rem}.user-mobile-topbar{display:flex;align-items:center;gap:.7rem;margin-bottom:.75rem}.user-mobile-topbar p{margin:0;font-size:.96rem;font-weight:700;color:#333}.user-page{gap:.75rem}.user-page-header{display:none}.user-page-greeting{padding:.85rem .9rem}.user-page-greeting h2{font-size:1.3rem}.user-page-greeting p{font-size:.9rem}.user-overview-grid{grid-template-columns:1fr;gap:.75rem}.user-stat-card{padding:.85rem .9rem}.user-stat-card h4{margin-top:.45rem;font-size:1.55rem}.user-finance-card{padding:.85rem .9rem;align-items:flex-start;gap:.7rem}.user-finance-icon{width:46px;height:46px;border-radius:12px}.user-finance-card h3{font-size:1.55rem}.user-quick-grid{grid-template-columns:1fr;gap:.75rem}.user-quick-card{min-height:96px;padding:.85rem}.user-quick-card span{font-size:1rem}}
