@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;700&display=swap);body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}*,:after,:before{box-sizing:border-box}:root{--primary-color:#0b6e4f;--secondary-color:#f8f9fa;--text-color:#2f2f2f;--light-text-color:#6c757d;--background-color:#fff;--accent-color:#00796b;--border-color:#dee2e6;--error-color:#dc3545;--danger-color:#dc3545}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--background-color);color:#2f2f2f;color:var(--text-color);font-family:Montserrat,sans-serif;margin:0;max-width:100vw}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{display:flex;flex-direction:column;min-height:100vh}.App-header{background-color:#fff;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color);box-shadow:0 2px 4px #0000000d;color:#2f2f2f;color:var(--text-color);padding:1rem 2rem}.navbar{align-items:stretch;display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:1200px;padding-right:0;position:relative}.nav-header{align-items:center;display:flex;justify-content:space-between;width:100%}.brand-logo{align-items:center;display:inline-flex}.brand-logo img{height:65px;width:auto}.nav-toggle{background:none;border:none;cursor:pointer;display:none;line-height:1;padding:.25rem}.nav-toggle span{background:#2f2f2f;background:var(--text-color);display:block;height:2px;margin:5px 0;transition:transform .3s ease,opacity .3s ease;width:22px}.nav-toggle.open span:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-links{align-items:center;display:flex;list-style:none;margin:0;padding:0}@media (min-width:901px){.navbar{align-items:center;flex-direction:row}.nav-links{background:#0000;border:none;box-shadow:none;flex-direction:row;gap:0;opacity:1;pointer-events:auto;position:static;transform:none}.nav-toggle{display:none!important}}.nav-links li{margin-left:1.5rem}@media (max-width:900px){.navbar{align-items:stretch;flex-direction:column}.brand-logo img{height:55px}.nav-toggle{display:block}.nav-links{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#fff9;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 45px #0000001f;flex-direction:column;gap:1rem;opacity:0;padding:1.5rem;pointer-events:none;position:absolute;right:0;top:100%;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease;z-index:2000}.nav-links.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-links li{margin-left:0}}.nav-anchor,.nav-links a{color:#2f2f2f;color:var(--text-color);font-size:1.1rem;font-weight:500;text-decoration:none;transition:color .3s ease}.nav-anchor:hover,.nav-links a:hover{color:#0b6e4f;color:var(--primary-color)}.nav-message-link{align-items:center;background:#073b4c14;border-radius:999px;display:inline-flex;gap:.35rem;justify-content:center;padding:6px 10px;position:relative}.nav-message-icon{color:#ff2d2d;font-size:1.05rem;line-height:1}.nav-badge{background:#ff5a5f;border-radius:999px;box-shadow:0 2px 6px #0003;color:#fff;font-size:.7rem;font-weight:700;padding:2px 6px;position:absolute;right:-6px;top:-6px}.logout-button{background-color:#0b6e4f;background-color:var(--primary-color);border:1px solid #0b6e4f;border:1px solid var(--primary-color);border-radius:4px;color:#fff;cursor:pointer;font-size:1.1rem;padding:.5rem 1rem;transition:background-color .3s ease,color .3s ease}.logout-button:hover{background-color:#fff;color:#0b6e4f;color:var(--primary-color)}.App-main{flex-grow:1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.App-main h1,.App-main h2{color:#0b6e4f;color:var(--primary-color);margin-bottom:1rem;text-align:center}.home-main{display:flex;flex-direction:column;gap:4rem;padding:3rem 0 4rem;width:100%}.home-main p{margin:0;text-align:left}.eyebrow-tag{color:#6c757d;color:var(--light-text-color);font-size:.75rem;letter-spacing:.2em;margin-bottom:.5rem;text-transform:uppercase}.hero-section{grid-gap:2rem;align-items:center;background:radial-gradient(circle at top right,#0b6e4f26,#0000 50%),linear-gradient(135deg,#0b6e4f,#0b877b);border-radius:24px;box-shadow:0 25px 65px #0b6e4f40;color:#fff;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:clamp(1.5rem,3vw,2.6rem)}.hero-content h1{color:#fff;font-size:clamp(2rem,4vw,2.8rem);margin-bottom:1rem;margin-top:.25rem}.hero-content .eyebrow-tag{color:#ffffffd9}.hero-subhead{color:#ffffffeb;font-size:1.05rem;line-height:1.6;margin-bottom:2rem}.hero-ctas{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.ghost-button{border:1px solid #fff6;border-radius:50px;color:#fff;font-weight:600;padding:.8rem 1.5rem;text-decoration:none;transition:background .3s ease,color .3s ease}.ghost-button:hover{background:#ffffff26}.ghost-button--tiny{border-color:#ff6b6bbf;border-radius:999px;color:#ff6b6b;font-size:.75rem;line-height:1;padding:.25rem .6rem}.ghost-button--tiny:hover{background:#ff6b6b26}.file-input-hidden{height:1px;left:-9999px;opacity:0;position:absolute;width:1px}.hero-metrics{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.hero-metrics span{display:block;font-size:1.5rem;font-weight:700}.hero-visual{display:flex;flex-direction:column;gap:1.5rem;position:relative}.hero-carousel{background:#0e2f24;border-radius:28px;box-shadow:0 30px 60px #00000040;overflow:hidden;width:100%}.hero-carousel-track{display:flex;transition:transform .8s ease-in-out}.hero-slide{min-width:100%}.hero-image{display:block;height:100%;max-height:520px;object-fit:cover;width:100%}.hero-testimonial{animation:testimonialSlideIn .6s ease both;background:#000000b3;border-radius:12px;bottom:20px;box-shadow:0 16px 32px #0f172a2e;max-width:180px;padding:.75rem .95rem;position:absolute;right:-12px}.hero-testimonial p{color:#fff;font-size:.72rem;line-height:1.4;margin:0 0 .55rem}.hero-testimonial-meta{color:#ffffffbf;display:flex;flex-direction:column;font-size:.64rem;gap:.15rem}.hero-testimonial-meta span:first-child{color:#39d98a!important;color:#2f2f2f;color:var(--text-color);font-weight:600}@keyframes testimonialSlideIn{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}.hero-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff26;border:1px solid #ffffff4d;border-radius:20px;padding:1.5rem}.hero-collage{align-items:center;background:linear-gradient(145deg,#ffffff14,#0b6e4f40);border-radius:28px;box-shadow:0 25px 50px #00000040;display:flex;justify-content:center;min-height:320px;overflow:hidden;padding:1.5rem;position:relative}.hero-pill{border-radius:40px;filter:blur(0);height:220px;opacity:.8;position:absolute;width:220px}.hero-pill--teal{background:radial-gradient(circle,#00796bb3,#0b6e4f33);right:-20px;top:-30px}.hero-pill--char{background:radial-gradient(circle,#2f2f2f99,#2f2f2f0d);bottom:-40px;left:-10px}.hero-window{background:#fffffff2;border-radius:20px;box-shadow:0 20px 45px #0003;max-width:320px;overflow:hidden;position:relative;width:70%;z-index:2}.hero-window-nav{background:linear-gradient(90deg,#e3f2ed,#d7ece6);height:40px}.hero-window-body{display:flex;flex-direction:column;gap:.75rem;padding:1rem}.hero-window-card{background:#0b6e4f14;border-radius:14px;color:#1e2a25;display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem}.hero-window-card p{color:#1e2a25d9;font-size:.85rem;margin:0}.hero-window-card strong{color:#0b6e4f;color:var(--primary-color);font-size:.95rem}.hero-window-card.ghost{background:#0b6e4f08}.hero-window-dot{background:#0b6e4f;background:var(--primary-color);border-radius:50%;display:inline-block;height:8px;width:8px}.hero-flow{bottom:30px;display:flex;gap:.4rem;position:absolute;right:20px}.hero-flow span{animation:flow 2.8s infinite;background:#ffffff80;border-radius:999px;height:4px;width:40px}.hero-flow span:nth-child(2){animation-delay:.2s}.hero-flow span:nth-child(3){animation-delay:.4s}@keyframes flow{0%{opacity:.4;transform:translateX(0)}50%{opacity:1;transform:translateX(12px)}to{opacity:.4;transform:translateX(0)}}.hero-card h3{color:#fff;margin-top:0}.hero-card-number{font-size:2.5rem;margin:.25rem 0}.hero-card-label{color:#fffc;margin-bottom:1rem}.hero-sparkline{align-items:flex-end;display:flex;gap:.4rem;height:40px;margin-bottom:.8rem}.hero-sparkline span{animation:pulse 2s ease-in-out infinite;background:#fff6;border-radius:999px;flex:1 1}.hero-sparkline span:nth-child(2){height:70%}.hero-sparkline span:nth-child(3){animation-delay:.2s;height:50%}.hero-sparkline span:nth-child(4){animation-delay:.4s;height:90%}.hero-sparkline span:nth-child(5){animation-delay:.6s;height:60%}.hero-mini{color:#fffc;margin:0}@keyframes pulse{0%,to{transform:scaleY(.9)}50%{transform:scaleY(1)}}.hero-graphic-shell{border-radius:24px;box-shadow:0 20px 40px #00000040;overflow:hidden;position:relative}.hero-graphic-shell img{display:block;height:100%;object-fit:cover;width:100%}.hero-badge{background:#ffffffe6;border-radius:16px;bottom:16px;box-shadow:0 10px 18px #00000026;color:#2f2f2f;color:var(--text-color);left:16px;padding:.75rem 1rem;position:absolute}.flow-section{margin:.75rem 0 2.5rem;text-align:center}.flow-promo{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:16px;box-shadow:0 12px 30px #0000000a;display:flex;justify-content:center;margin-top:.5rem;padding:.75rem}.flow-promo img{background:#fff;border-radius:12px;display:block;height:auto;width:75%}@media (max-width:720px){.flow-promo img{width:96%}}.capabilities-section{text-align:center}.capabilities-section h2{margin-bottom:2rem;margin-top:.25rem}.capabilities-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.capability-card{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:16px;box-shadow:0 12px 30px #0000000a;display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;text-align:left}.capability-image{border-radius:14px;box-shadow:0 12px 26px #0000001f;height:180px;object-fit:cover;width:100%}.capability-icon{align-items:center;background:#0b6e4f1a;border-radius:12px;color:#0b6e4f;color:var(--primary-color);display:flex;font-weight:700;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.story-band{grid-gap:2rem;align-items:center;background:#f7fbfb;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:24px;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:2.5rem}.story-band.reverse{direction:rtl}.story-band.reverse .story-copy,.story-band.reverse .story-visual{direction:ltr}.story-visual{min-height:220px;position:relative}.story-image{border-radius:24px;box-shadow:0 18px 35px #0000001f;height:100%;min-height:220px;object-fit:cover;width:100%}.story-gradient{background:linear-gradient(135deg,#0b6e4f26,#00796b59);border-radius:24px;box-shadow:0 18px 35px #00000014;height:220px}.story-collage{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.story-orb{animation:orb 6s ease-in-out infinite;background:radial-gradient(circle,#ffffffe6,#fff0);border-radius:50%;height:120px;width:120px}.story-lines{background:#ffffff80;height:2px;position:absolute;transform:rotate(20deg);width:160px}.story-card{background:#fff;border-radius:16px;box-shadow:0 15px 30px #00000014;left:20px;padding:1rem;position:absolute;top:20px}@keyframes orb{0%,to{opacity:.8;transform:translateY(0)}50%{opacity:1;transform:translateY(-8px)}}.story-copy h3{color:#2f2f2f;color:var(--text-color);margin-top:0}.story-copy ul{list-style:none;margin:1rem 0 0;padding:0}.story-copy li{margin-bottom:.5rem;padding-left:1.2rem;position:relative}.story-copy li:before{content:"•";left:0;position:absolute}.link-button,.story-copy li:before{color:#0b6e4f;color:var(--primary-color)}.link-button{background:none;border:none;cursor:pointer;font:inherit;padding:0;text-decoration:underline}.link-button:hover{color:#0b877b}.cta-panel{background:linear-gradient(120deg,#0b6e4f,#0d8c80);background-position:center 80%;background-size:cover;border-radius:24px;box-shadow:0 30px 60px #0d8c8059;color:#fff;padding:2.5rem;text-align:center}.cta-panel h3{color:#fff;margin-top:0}.cta-panel p{color:#ffffffd9;margin-bottom:1.5rem}.homepage-graphic{border-radius:8px;display:block;margin:2rem auto;max-width:500px;width:100%}.properties-banner{border-radius:20px;box-shadow:0 18px 40px #00000026;margin-bottom:1.25rem;overflow:hidden}.properties-banner img{display:block;height:280px;object-fit:cover;width:100%}@media (max-width:768px){.hero-section{padding:2rem}.hero-ctas{align-items:stretch;flex-direction:column}.story-band{padding:1.75rem}}.App-footer{align-items:center;background-color:#2f2f2f;background-color:var(--text-color);box-shadow:0 -2px 4px #0000000d;color:#fff;display:flex;flex-direction:column;gap:.5rem;padding:1rem 2rem;text-align:center}.App-footer .footer-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.App-footer .footer-link{color:#fff;font-weight:500;text-decoration:underline}.App-footer .footer-link:hover{opacity:.85}.contact-page{padding:3rem 1.5rem 4rem;text-align:center}.contact-page h2{margin-bottom:.5rem}.contact-intro{color:var(--muted-text-color);margin-bottom:2rem}.contact-form{max-width:600px}.captcha-group{display:flex;justify-content:center}.form-status{border-radius:6px;font-weight:500;margin-bottom:1rem;padding:.75rem 1rem}.form-status.success{background:#e8f5e9;color:#1b5e20}.form-status.error{background:#ffebee;color:#b71c1c}.new-items-card{padding:1rem 1.25rem}.new-items-card .inquiry-card{border-radius:10px;box-shadow:none;padding:.75rem 1rem}.new-items-card .status-text,.new-items-card .timestamp{font-size:.85rem;margin-top:.25rem}.new-items-card .form-actions{margin-top:.35rem}.card-dismiss{background:#0000;border:none;color:var(--muted-text-color);cursor:pointer;font-size:.9rem}.card-dismiss:hover{color:#2f2f2f;color:var(--text-color)}.notice-card{padding:1rem 1.25rem;position:relative}.report-page .report-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.report-section{margin-bottom:1.25rem}.report-filters{flex-wrap:wrap}.report-filters button,.report-filters input{margin-bottom:.5rem}.kpi-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.kpi-card{background:#f8fafc;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;gap:.4rem;padding:.9rem 1rem}.kpi-card span{color:var(--muted-text-color);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}.kpi-card strong{color:#2f2f2f;color:var(--text-color);font-size:1.35rem}.kpi-card.muted{opacity:.65}.bar-list{display:flex;flex-direction:column;gap:.6rem;margin-top:.75rem}.bar-row{grid-gap:.75rem;align-items:center;display:grid;font-size:.85rem;gap:.75rem;grid-template-columns:120px 1fr 60px}.bar-track{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden;width:100%}.bar-fill{background:#4f46e5;border-radius:999px;height:100%}.auth-form,.property-form{background-color:#fff;background-color:var(--background-color);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000000d;margin:2rem auto;max-width:500px;padding:2.5rem;text-align:left}.form-group{margin-bottom:1.5rem}.auth-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.auth-actions .ghost-button{padding:.85rem 1.5rem}.form-group label{color:#2f2f2f;color:var(--text-color);display:block;font-weight:700;margin-bottom:.5rem}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],textarea{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:10px;box-sizing:border-box;color:#2f2f2f;color:var(--text-color);font-size:1rem;padding:.8rem 1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#0b6e4f99;box-shadow:0 0 0 3px #0b6e4f1f;outline:none}.form-group input[type=date],.form-group input[type=email],.form-group input[type=number],.form-group input[type=password],.form-group input[type=text],.form-group textarea{width:100%}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;background-image:linear-gradient(45deg,#0000 50%,#6b7280 0),linear-gradient(135deg,#6b7280 50%,#0000 0),linear-gradient(90deg,#0000,#0000);background-position:calc(100% - 20px) calc(1em + 2px),calc(100% - 15px) calc(1em + 2px),calc(100% - 2.5rem) .5rem;background-repeat:no-repeat;background-size:5px 5px,5px 5px,1px 2.5em;padding:.8rem 2.5rem .8rem 1rem}.form-control,select{border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:10px;box-sizing:border-box;color:#2f2f2f;color:var(--text-color);font-size:1rem;width:100%}.form-control{background:#fff;padding:.8rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-control:focus{border-color:#0b6e4f99;box-shadow:0 0 0 3px #0b6e4f1f;outline:none}.form-group select{width:100%}.form-group.checkbox-group{align-items:center;display:flex;margin-top:1.5rem}.form-group.checkbox-group input[type=checkbox]{margin-right:.5rem;width:auto}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.primary-button{background-color:#0b6e4f;background-color:var(--primary-color);border:1px solid #0b6e4f;border:1px solid var(--primary-color);border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;padding:.8rem 1.5rem;text-decoration:none;transition:all .3s ease;width:auto}.primary-button:hover{background-color:#fff;color:#0b6e4f;color:var(--primary-color)}.secondary-button{background-color:#f8f9fa;background-color:var(--secondary-color);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:4px;color:#2f2f2f;color:var(--text-color);cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;padding:.8rem 1.5rem;text-align:center;text-decoration:none;transition:background-color .3s ease;width:auto}.secondary-button:hover{background-color:#e0e0e0}.delete-button{background-color:#dc3545;background-color:var(--danger-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:.8rem 1.5rem;transition:background-color .3s ease;width:auto}.delete-button:hover{background-color:darken(#dc3545,10%);background-color:darken(var(--danger-color),10%)}.error-message{color:#dc3545;color:var(--error-color);font-weight:700;margin-bottom:1rem;text-align:center}.property-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:2rem}.property-card{background-color:#fff;background-color:var(--background-color);border:1px solid #e5edf2;border-radius:18px;box-shadow:0 12px 24px #0f172a14;display:flex;flex-direction:column;height:100%;overflow:hidden;text-align:left;transition:box-shadow .25s ease,transform .25s ease}.property-card:hover{box-shadow:0 16px 28px #0f172a1f;transform:translateY(-3px)}.property-image{max-height:200px;object-fit:cover;width:100%}.property-info{display:flex;flex-direction:column;flex-grow:1;padding:1.5rem}.property-info h3{font-size:1.4rem;margin-bottom:.5rem;margin-top:0}.property-info h3 a{color:#0b6e4f;color:var(--primary-color);text-decoration:none}.property-info p{color:#6c757d;color:var(--light-text-color);margin-bottom:.5rem}.property-rent{color:#00796b;color:var(--accent-color);font-size:1.2rem;font-weight:700;margin-bottom:.6rem}.property-info .property-specs{margin-bottom:1rem}.view-details-button{display:block;margin-top:auto;padding:.75rem 1rem;text-align:center;text-decoration:none}.property-detail-page{align-items:flex-start;display:flex;justify-content:center;margin-top:2rem}.property-detail-card{background-color:#f8f9fa;background-color:var(--secondary-color);border-radius:8px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;max-width:100%;overflow:hidden;width:100%}.property-managed-image{border-radius:12px;box-shadow:0 12px 24px #00000026;height:220px;margin-bottom:1rem;object-fit:cover;width:100%}.property-images{grid-gap:.5rem;background-color:#f0f2f5;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:1rem}.property-detail-image{border-radius:4px;max-height:150px;object-fit:cover;width:100%}.property-detail-info{padding:2rem;text-align:left}.property-detail-info h2{color:#0b6e4f;color:var(--primary-color);margin-top:0}.property-detail-rent{color:#00796b;color:var(--accent-color);font-size:1.8rem;font-weight:700;margin-bottom:.75rem}.property-specs{display:flex;flex-wrap:wrap;gap:.75rem;margin:.6rem 0 1rem}.property-specs span{background:#0f766e1f;border-radius:999px;color:#0f766e;font-size:.85rem;font-weight:600;padding:.35rem .75rem}.property-title-row{align-items:center;display:flex;gap:.75rem}.property-thumb{border:1px solid #e5edf2;border-radius:10px;height:44px;object-fit:cover;width:44px}.property-thumb-row{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-top:.5rem}.property-thumb-small{aspect-ratio:1;border:1px solid #e5edf2;border-radius:10px;object-fit:cover;width:100%}.property-detail-info p{line-height:1.5;margin-bottom:.8rem}.property-actions{display:flex;gap:1rem;justify-content:flex-start;margin-top:2rem}.landlord-dashboard-page{text-align:center}.add-property-button{display:inline-block;margin-bottom:2rem}.property-management-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:2rem}.landlord-property-card{background-color:#f8f9fa;background-color:var(--secondary-color);border-radius:8px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden;text-align:left}.landlord-property-image{max-height:180px;object-fit:cover;width:100%}.landlord-property-info{display:flex;flex-direction:column;flex-grow:1;padding:1.5rem}.landlord-property-info h3{font-size:1.3rem;margin-bottom:.5rem;margin-top:0}.landlord-property-rent{color:#00796b;color:var(--accent-color);font-size:1.1rem;font-weight:700;margin-bottom:1rem}.landlord-property-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:auto}.landlord-property-actions.stacked-actions{align-items:stretch;flex-direction:column;justify-content:flex-start}.landlord-property-actions.stacked-actions .form-control,.landlord-property-actions.stacked-actions .ghost-button,.landlord-property-actions.stacked-actions .primary-button,.landlord-property-actions.stacked-actions .secondary-button{border-radius:999px;font-size:.95rem;font-weight:500;text-align:center}.landlord-property-actions.stacked-actions select.form-control{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#f6f9fb;border:1px solid #d9e2ec;font-weight:600;padding:.6rem 1rem;text-align:center;text-align-last:center}.property-form-page{text-align:center}.property-form textarea{min-height:80px;resize:vertical}.image-preview-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));margin-top:1rem}.image-preview-container{border-radius:8px;cursor:grab;overflow:hidden;padding-top:100%;position:relative;width:100%}.image-preview-container:active{cursor:grabbing}.image-preview{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.remove-image-button{background-color:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:16px;height:24px;line-height:24px;opacity:0;position:absolute;right:4px;text-align:center;top:4px;transition:opacity .3s ease;width:24px}.image-preview-container:hover .remove-image-button{opacity:1}.image-reorder-actions{bottom:8px;display:flex;gap:6px;left:8px;opacity:0;position:absolute;transition:opacity .2s ease}.image-preview-container:hover .image-reorder-actions{opacity:1}.image-reorder-actions button{background:#0f172acc;border:none;border-radius:6px;color:#fff;font-size:.75rem;padding:4px 6px}@media (max-width:768px){.image-reorder-actions{opacity:1}}.admin-table{border-collapse:collapse;border-radius:8px;box-shadow:0 4px 12px #0000000d;margin-top:2rem;overflow:hidden;table-layout:fixed;width:100%}.admin-table td,.admin-table th,.dashboard-section h3,.landlord-property-info h3,.ledger-item p,.property-info h3{word-break:break-word}.admin-table td,.admin-table th{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color);padding:1rem;text-align:left}.admin-table thead{background-color:#f8f9fa;background-color:var(--secondary-color);font-weight:700}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background-color:#f1f1f1}.admin-table-actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-table-actions .delete-button,.admin-table-actions .secondary-button{font-size:.9rem;padding:.4rem .8rem}.dossier-grid{display:block;gap:1.5rem;margin-top:2rem}.dossier-section{background-color:#fff;border:1px solid #e6eef0;border-radius:14px;box-shadow:0 6px 18px #0f172a0f;margin-bottom:1rem;padding:1.6rem}.dossier-section h3{font-size:1.05rem;margin-bottom:.75rem;margin-top:0}.dossier-section p{color:#334155;margin:.35rem 0}.comment-list{margin-bottom:1rem;max-height:400px;overflow-y:auto}.comment{border-radius:8px;margin-bottom:.8rem;padding:.8rem}.comment-box{background:#fbfdff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:inset 0 1px 2px #0f172a0d;font-size:.95rem;margin-bottom:.75rem;min-height:120px;padding:.85rem 1rem;width:100%}.comment-box:focus{border-color:#2f7d7c;box-shadow:0 0 0 3px #2f7d7c26;outline:none}.property-form-page .property-form{margin:0 auto;max-width:1100px}.property-form-page .dossier-section{margin-bottom:1.25rem}.section-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.report-chip{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:600;line-height:1;padding:.3rem .65rem;text-transform:none}.report-chip--success{background:#0b6e4f1f;border-color:#0b6e4f33;color:#0b6e4f}.report-chip--warn{background:#dc35451a;border-color:#dc354533;color:#b02a37}.report-chip--info{background:#00796b1f;border-color:#00796b33;color:#00796b}.report-chip--muted{background:#6c757d1f;border-color:#6c757d33;color:#6c757d}.comment-send{align-self:flex-start}.success-message{background:#0b6e4f14;border:1px solid #0b6e4f26;border-radius:10px;color:#0b6e4f;color:var(--primary-color);display:inline-block;margin-top:.5rem;padding:.5rem .75rem}.maintenance-card{background:#fff;border:1px solid #e5edf2;border-radius:16px;box-shadow:0 10px 20px #0f172a0d;padding:1.25rem}.maintenance-form input,.maintenance-form textarea{background:#fbfdff;border:1px solid #dbe3ea;border-radius:12px;margin-bottom:.75rem;padding:.8rem .95rem;width:100%}.maintenance-form input:focus,.maintenance-form textarea:focus{border-color:#2f7d7c;box-shadow:0 0 0 3px #2f7d7c26;outline:none}.ledger-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.ledger-card{background:#fff;border:1px solid #e5edf2;border-radius:16px;box-shadow:0 10px 20px #0f172a0d;margin-bottom:1.5rem;max-width:520px;padding:1.25rem}.ledger-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.ledger-item{background:#fff;border:1px solid #e5edf2;border-radius:16px;box-shadow:0 8px 16px #0f172a0a;padding:1rem 1.1rem}.ledger-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.maintenance-history{border-top:1px solid #eef2f7;color:#475569;font-size:.9rem;margin-top:1rem;padding-top:.75rem}.maintenance-list{grid-gap:.75rem;display:grid;gap:.75rem}.maintenance-row{background:#fff;border:1px solid #e5edf2;border-radius:16px;box-shadow:0 6px 14px #0f172a0a;padding:.9rem 1.1rem}.maintenance-summary{display:flex;flex-direction:column;gap:.5rem}.maintenance-title{align-items:center;display:flex;gap:1rem;justify-content:space-between}.maintenance-title h3{font-size:1rem;margin:0}.maintenance-meta{color:#475569;display:flex;flex-wrap:wrap;font-size:.9rem;gap:.75rem 1.5rem}.maintenance-details{margin-top:.6rem}.maintenance-details summary{color:#1f2937;cursor:pointer;font-weight:600;list-style:none}.maintenance-details summary::-webkit-details-marker{display:none}.maintenance-details-body{grid-gap:.75rem;border-top:1px solid #eef2f7;display:grid;gap:.75rem;margin-top:.75rem;padding-top:.75rem}.maintenance-history ul{margin:.5rem 0 0;padding-left:1.1rem}.maintenance-history li{margin-bottom:.35rem}.comment.tenant{background-color:#e9f5ff}.comment.landlord{background-color:#f1f1f1}.comment small{color:#6c757d;color:var(--light-text-color);display:block;font-size:.75rem;margin-top:.3rem}.comment-form textarea{border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:4px;min-height:60px;padding:.8rem;resize:vertical;width:100%}.comment-form button{float:right;margin-top:.5rem}.document-upload-form{margin-left:auto;margin-right:auto;margin-top:2rem;max-width:700px}.document-upload-item{align-items:flex-start;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;margin-bottom:1rem;padding:1rem}.document-upload-item label{font-weight:700;margin-bottom:.5rem}.upload-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;width:100%}.upload-controls input[type=file]{display:none}.file-button{align-items:center;background:#0f766e;border:none;border-radius:999px;box-shadow:0 8px 18px #0f766e33;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:.55rem 1rem;transition:transform .2s ease,box-shadow .2s ease}.file-button:hover{box-shadow:0 10px 20px #0f766e40;transform:translateY(-1px)}.file-name{color:#64748b;font-size:.9rem}.upload-controls button{padding:.5rem 1rem;white-space:nowrap}.upload-status{font-size:.9rem;font-weight:700;margin-top:.5rem}.upload-status.uploaded{color:#00796b;color:var(--accent-color)}.upload-status.failed{color:#dc3545;color:var(--error-color)}.image-modal-overlay{align-items:center;background-color:#000c;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.image-modal-content{max-height:90vh;max-width:90vw;position:relative}.image-modal-content img{border-radius:8px;height:auto;max-height:90vh;object-fit:contain;width:100%}.image-modal-close{background-color:#fff;border:1px solid #ccc;border-radius:50%;box-shadow:0 2px 5px #0003;color:#333;cursor:pointer;font-size:24px;height:30px;line-height:30px;position:absolute;right:-10px;text-align:center;top:-10px;width:30px}.tenant-dashboard-page{text-align:center}.dashboard-section{margin-bottom:3rem;text-align:left}.dashboard-section h3{color:#0b6e4f;color:var(--primary-color);margin-bottom:1.5rem}.application-list,.inquiry-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.applications-split{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 1fr}@media (max-width:900px){.applications-split{grid-template-columns:1fr}}.application-card,.inquiry-card{background-color:#f8f9fa;background-color:var(--secondary-color);border-radius:8px;box-shadow:0 2px 8px #00000014;padding:1.5rem;text-align:left}.application-card p,.inquiry-card p{margin-bottom:.5rem}.inquiry-calendar-card{margin-bottom:1.5rem}.inquiry-calendar-card .fc{font-family:Inter,Segoe UI,sans-serif}.inquiry-calendar-card .fc-toolbar-title{font-size:1.1rem}.inquiry-calendar-card .fc-button{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#0f172a;font-weight:600;padding:.35rem .85rem}.inquiry-calendar-card .fc-button-primary:not(:disabled).fc-button-active,.inquiry-calendar-card .fc-button-primary:not(:disabled):active{background:#0f766e;border-color:#0f766e;color:#fff}.inquiry-calendar-card .fc-daygrid-event,.inquiry-calendar-card .fc-timegrid-event{background:#0f766e2e;border:none;border-radius:999px;color:#0f766e;font-weight:600;padding:2px 8px}.modal-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:999}.modal-card{background:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a33;max-width:420px;padding:1.5rem;width:100%}.modal-card .form-actions{flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.inquiry-modal-meta{color:#334155;font-size:.9rem;margin:.5rem 0 1rem}.application-card p strong,.inquiry-card p strong{color:#2f2f2f;color:var(--text-color)}.application-card .timestamp,.inquiry-card .timestamp{color:#6c757d;color:var(--light-text-color);font-size:.85rem;margin-top:1rem}.status-pending{color:orange;font-weight:700}.status-under_review{color:#007bff;font-weight:700}.status-accepted{color:#00796b;color:var(--accent-color);font-weight:700}.status-rejected{color:#dc3545;color:var(--danger-color);font-weight:700}.application-form-page,.inquiry-form-page{text-align:center}@media (max-width:768px){.App-header{padding:1rem}.navbar{align-items:flex-start;flex-direction:column;padding:0 1rem}.App-main{margin:0 auto;max-width:100%;padding:1rem}.nav-links{flex-direction:column;margin-top:1rem;width:100%}.nav-links li{margin-bottom:.5rem;margin-left:0;width:100%}.logout-button,.nav-links a{background-color:initial;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:4px;color:#2f2f2f;color:var(--text-color);display:block;padding:.8rem;text-align:center;width:100%}.logout-button{margin-top:.5rem}.auth-form,.property-form{margin:1rem auto;padding:1.5rem}.application-list,.inquiry-list,.property-grid,.property-management-grid{grid-template-columns:1fr}.property-detail-page{align-items:stretch}.property-detail-card{margin:1rem}.form-actions,.property-actions{flex-direction:column;gap:.75rem}.form-actions .primary-button,.form-actions .secondary-button,.landlord-property-actions button,.property-actions .primary-button,.property-actions .secondary-button{width:100%}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table td,.admin-table tr{display:block;width:100%}.admin-table tr{border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;margin-bottom:1rem}.admin-table td{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color);padding-left:50%;position:relative;text-align:right}.admin-table td:last-child{border-bottom:none}.admin-table td:before{content:attr(data-label);font-weight:700;left:1rem;padding-right:10px;position:absolute;text-align:left;white-space:nowrap;width:45%}.dossier-grid{grid-template-columns:1fr!important}@media (min-width:769px){.dossier-grid{display:grid;grid-template-columns:1fr 1fr}.comments-section{grid-column:span 2}}}.tenants-page{color:#0f172a;padding:40px 24px 80px}.tenants-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:32px}.tenants-actions{display:flex;flex-wrap:wrap;gap:12px}.status-text{color:#475569;font-size:16px}.error-text{color:#dc2626}.empty-state{background:#f8fafc;border-radius:20px;box-shadow:0 12px 30px #0f172a14;margin-bottom:32px;padding:28px}.tenants-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.tenant-card{background:#fff;border-radius:20px;box-shadow:0 16px 30px #0f172a14;display:flex;flex-direction:column;gap:16px;padding:20px}.tenant-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.status-pill{background:#0f766e1f;color:#0f766e;font-size:12px;font-weight:600;padding:6px 12px;text-transform:capitalize}.status-pill.ended{background:#94a3b833;color:#64748b}.status-pill.due,.status-pill.open{background:#fff4e5;color:#b45309}.status-pill.in_progress,.status-pill.late{background:#fee2e2;color:#b91c1c}.status-pill.paid,.status-pill.resolved,.status-pill.signed{background:#dcfce7;color:#166534}.tenant-property{color:#475569;font-size:14px}.tenant-meta{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-meta span{color:#94a3b8;display:block;font-size:12px}.tenant-meta strong{color:#0f172a;font-size:16px}.tenant-actions{display:flex;flex-wrap:wrap;gap:12px}.tenant-detail-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:32px}.tenant-detail-actions{display:flex;flex-wrap:wrap;gap:12px}.tenant-detail-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(260px,1fr))}@media (max-width:768px){.tenant-detail-grid{grid-template-columns:1fr}}.tenant-detail-card{background:#fff;border-radius:20px;box-shadow:0 16px 30px #0f172a14;display:flex;flex-direction:column;gap:12px;padding:20px}.tenant-detail-card h3{color:#0f172a;margin:0 0 4px}.tenant-detail-card ul{grid-gap:8px;color:#475569;display:grid;font-size:14px;gap:8px;list-style:none;margin:0;padding:0}.tenant-detail-card ul strong{color:#0f172a}.checklist-row{align-items:center;background:#f8fafc;border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.checklist-label{color:#0f172a;font-weight:500}.checklist-label,.checklist-meta{align-items:center;display:flex;gap:10px}.checklist-meta{color:#64748b;font-size:12px}.status-pill.tenant{background:#3b82f626;color:#1d4ed8}.status-pill.landlord{background:#0f766e1f;color:#0f766e}.tenant-checklist{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:0;padding:0}.lease-chat{border-top:1px solid #e5edf2;margin-top:1.25rem;padding-top:1rem}.lease-chat-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.lease-chat-thread{grid-gap:.75rem;display:grid;gap:.75rem;max-height:260px;overflow-y:auto;padding-right:.5rem}.lease-chat-message{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:.75rem .9rem}.lease-chat-message.landlord{background:#ecfdf3;border-color:#bbf7d0}.lease-chat-message.tenant{background:#eef6ff;border-color:#bfdbfe}.lease-chat-message.unread{border-color:#ff2d2d;box-shadow:0 0 0 2px #ff2d2d26}.lease-chat-message p{margin:0 0 .4rem}.lease-chat-message span{color:#64748b;font-size:.75rem}.lease-chat-compose{grid-gap:.75rem;display:grid;gap:.75rem;margin-top:.75rem}.walkthrough-grid-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.walkthrough-grid-controls label{color:#4a5c6a;display:flex;flex-direction:column;font-size:.85rem;gap:.35rem}.walkthrough-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));margin-bottom:.75rem}.walkthrough-slot{background:#f8fafc;border:1px solid #d9e2ec;border-radius:10px;color:#1f2937;font-size:.85rem;font-weight:600;padding:.4rem .5rem}.walkthrough-slot.selected{background:#0f766e26;border-color:#0f766e;color:#0f766e}.walkthrough-slot.disabled{cursor:not-allowed;opacity:.45}@media (max-width:768px){.tenants-page{padding:32px 16px 64px}.lease-chat-header,.tenant-actions,.tenant-detail-actions{flex-direction:column}.lease-chat-header{align-items:flex-start}}.progress-bar{margin-bottom:1.5rem}.progress-bar,.progress-step{align-items:center;display:flex}.progress-step{flex:1 1}.step-marker{align-items:center;background-color:#dee2e6;border-radius:50%;color:#6c757d;display:flex;font-size:.9rem;font-weight:700;height:24px;justify-content:center;width:24px}.progress-step.complete .step-marker{background-color:var(--primary-color);color:#fff}.progress-step.current .step-marker{border:2px solid var(--primary-color)}.step-label{color:var(--text-color);font-size:.9rem;margin-left:.5rem}.progress-step.complete .step-label{color:var(--primary-color)}.step-bar{background-color:#dee2e6;height:2px;left:calc(100% + 4px);position:absolute;right:-50%;top:50%}.progress-step.complete .step-bar{background-color:var(--primary-color)}.progress-step{position:relative}.step-marker{z-index:3}.step-bar{z-index:1}.step-label{background-color:var(--background-color);padding:0 .3em;position:relative;z-index:2}@media (max-width:768px){.progress-bar{align-items:flex-start;flex-direction:column}.progress-step{margin-bottom:1rem}.step-bar{display:none}}.status-control{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 2rem}.status-pill{background:#0000;border:1px solid var(--primary-color);border-radius:999px;color:var(--primary-color);cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s,color .2s}.status-pill.active{background:var(--primary-color);color:#fff}.update-button{margin-left:auto}
/*# sourceMappingURL=main.261148b0.css.map*/