@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";.site-nav{z-index:1000;background:#fff;border-bottom:1px solid #e6e6e6;transition:transform .25s;position:sticky;top:0;transform:translateY(0);box-shadow:0 2px 4px #0000000d}.site-nav.nav-hidden{transform:translateY(-100%)}.site-nav-inner{justify-content:center;align-items:center;gap:28px;width:94%;min-height:70px;margin:0 auto;padding:5px 0;display:flex;position:relative}.brand{flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand:hover{opacity:.8}.logo-image{object-fit:contain;cursor:pointer;width:auto;height:128px}.desktop-nav{flex:0 auto;justify-content:center;align-items:center;gap:32px;width:auto;max-width:none;display:flex}.desktop-nav a{color:#4a4a4a;white-space:nowrap;border-radius:6px;padding:8px 12px;font-size:15px;font-weight:400;text-decoration:none;transition:color .2s}.desktop-nav a:hover{color:#333}.desktop-nav a.active{color:#333;text-underline-offset:6px;font-weight:500;text-decoration:underline 2px #aab2a6}.projects-nav-trigger{color:#4a4a4a;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-size:15px}.projects-nav-trigger:hover{color:#333}.projects-nav-trigger.active{color:#333;text-underline-offset:6px;font-weight:500;text-decoration:underline 2px #aab2a6}.projects-nav-item{position:relative}.projects-dropdown,.mobile-projects-dropdown{margin:0;padding:8px 0;list-style:none}.projects-dropdown{z-index:10;background:#fff;border:1px solid #e6e6e6;border-radius:4px;min-width:230px;display:none;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 20px #0000001f}.projects-nav-item:hover .projects-dropdown,.projects-nav-item:focus-within .projects-dropdown,.projects-dropdown.open{display:block}.projects-dropdown a{white-space:normal;border-radius:0;padding:9px 14px;font-size:14px;display:block}.projects-dropdown a:hover,.projects-dropdown a:focus-visible{background:#f5f5f5}.projects-dropdown .project-dropdown-all{border-top:1px solid #e6e6e6;margin-top:4px}.project-dropdown-status{color:#777;white-space:nowrap;padding:9px 14px;font-size:14px}.nav-actions{flex-shrink:0;align-items:center;gap:12px;display:flex;position:absolute;right:0}.dashboard-toggle{flex-shrink:0;align-items:center;display:flex;position:absolute;left:0}.dashboard-toggle .navbar-toggle{margin-right:0}.dashboard-menu{position:relative}.dashboard-menu .navbar-overlay,.dashboard-menu .navbar-sidebar{position:fixed}.btn-portal{color:#fff;cursor:pointer;white-space:nowrap;background:#aab2a6;border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 16px;font-size:15px;font-weight:500;transition:background-color .2s;display:flex}.btn-portal:hover{background:#8a9287}.arrow{font-size:16px}.btn-get-started{color:#fff;cursor:pointer;white-space:nowrap;background:#aab2a6;border:none;border-radius:8px;padding:10px 20px;font-size:15px;font-weight:500;transition:background-color .2s}.btn-get-started:hover{background:#8a9287}.btn-language{color:#4a4a4a;cursor:pointer;background:#f5f5f5;border:none;border-radius:8px;min-width:48px;padding:10px 14px;font-size:15px;font-weight:500;transition:background-color .2s}.btn-language:hover{background:#e8e8e8}.mobile-menu-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;display:none}.hamburger{flex-direction:column;justify-content:space-around;width:24px;height:18px;display:flex;position:relative}.hamburger span{background:#4a4a4a;border:none;border-radius:2px;width:100%;height:2px;transition:all .3s;display:block}.hamburger.open span:first-child{transform:rotate(45deg)translate(6px,6px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(6px,-6px)}.mobile-nav{background:#fff;border-top:1px solid #e6e6e6;flex-direction:column;max-height:0;transition:max-height .3s,padding .3s;display:none;overflow:hidden}.mobile-nav.open{max-height:700px}.mobile-nav a{color:#4a4a4a;border-bottom:1px solid #f0f0f0;width:80%;margin:0 auto;padding:12px 0;font-size:16px;font-weight:400;text-decoration:none;transition:color .2s}.mobile-nav a:last-of-type{border-bottom:none}.mobile-nav a:hover{color:#333}.mobile-nav a.active{color:#333;text-underline-offset:5px;font-weight:500;text-decoration:underline 2px #aab2a6}.mobile-projects-nav-item{width:80%;margin:0 auto}.mobile-projects-nav-item>a{width:100%}.mobile-projects-nav-item .projects-nav-trigger{text-align:left;border-bottom:1px solid #f0f0f0;width:100%;padding:12px 0}.mobile-projects-dropdown{padding:0 0 4px;display:none}.mobile-nav.open .mobile-projects-dropdown{display:block}.mobile-projects-dropdown a{box-sizing:border-box;border-bottom:1px solid #f0f0f0;width:100%;padding:8px 12px;font-size:14px;display:block}.mobile-projects-dropdown .project-dropdown-all{border-top:1px solid #e6e6e6;margin-top:4px}.mobile-actions{border-top:1px solid #e6e6e6;flex-direction:column;gap:10px;width:80%;margin:12px auto 0;padding-top:12px;display:flex}.mobile-actions .btn-portal,.mobile-actions .btn-get-started,.mobile-actions .btn-language{justify-content:center;width:100%}.mobile-hamburger{color:#4a4a4a;cursor:pointer;background:0 0;border:none;padding:8px;font-size:28px;transition:color .2s;display:none;position:absolute}.mobile-hamburger:hover{color:#333}.mobile-hamburger.left{left:20px}.mobile-hamburger.right{right:20px}.mobile-logo-menu-button{cursor:pointer;background:0 0;border:none;outline:none;padding:8px;display:none;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.mobile-logo-menu{object-fit:contain;width:auto;height:66px}.mobile-dashboard-menu{background:#fff;border-bottom:1px solid #e6e6e6;padding:12px 0;display:none}@media (width<=1100px){.site-nav-inner{width:92%}.desktop-nav a{padding:8px 10px;font-size:14px}.desktop-nav{gap:20px}.btn-portal,.btn-get-started{padding:8px 14px;font-size:14px}}@media (width<=768px){.site-nav-inner{justify-content:center;align-items:center;padding:12px 0;display:flex;position:relative}.brand,.desktop-nav,.nav-actions{display:none}.dashboard-toggle{position:absolute;top:50%;left:20px;transform:translateY(-50%)}.mobile-nav{padding:12px 0;display:flex}.mobile-logo-menu-button{display:block;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.logo-image{height:82px}}@media (width<=480px){.site-nav-inner,.mobile-nav a,.mobile-projects-nav-item,.mobile-actions{width:94%}.logo-image{height:74px}}.project-modal{background:#fff;border-radius:8px;width:90%;max-width:480px;max-height:70vh;overflow:hidden;box-shadow:0 2px 20px #00000026}.close-btn{color:#999;cursor:pointer;background:0 0;border:none;width:24px;height:24px;padding:0;font-size:24px;line-height:1}.close-btn:hover{color:#333}.modal-message{text-align:center;color:#666;margin:0;padding:30px 20px}.modal-message.error{color:#d32f2f}.project-list{max-height:calc(70vh - 60px);margin:0;padding:12px;list-style:none;overflow-y:auto}.project-list li{margin:0;padding:0}.project-item{color:#333;text-align:left;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:4px;width:100%;margin-bottom:6px;padding:12px 16px;font-size:.95rem;transition:all .2s}.project-item:hover{background:#f5f5f5;border-color:#4d85b9}.project-item:last-child{margin-bottom:0}@media (width<=600px){.project-modal{width:95%;max-width:none}.modal-header{padding:14px 16px}.project-list{padding:10px}}@media (width>=1600px){.navbar-sidebar{width:18%;min-width:280px}}@media (width<=1599px) and (width>=1200px){.navbar-sidebar{width:22%;min-width:260px}}@media (width<=1199px) and (width>=992px){.navbar-sidebar{width:28%;min-width:260px;max-width:300px}.navbar-logo-image{max-width:180px;height:45px}}@media (width<=991px) and (width>=768px){.navbar-sidebar{width:35%;min-width:280px;max-width:320px}.navbar-container{padding:2.5% 4%}.navbar-logo-image{max-width:160px;height:42px}.navbar-text{font-size:.85rem}}@media (width<=767px) and (width>=576px){.navbar-sidebar{width:50%;min-width:260px;max-width:340px}.navbar-container{min-height:60px;padding:3% 4%}.navbar-logo-image{max-width:140px;height:38px}.hamburger-line{width:22px}.navbar-section-title{font-size:.65rem}}@media (width<=575px){.navbar-sidebar{width:75%;min-width:240px;max-width:280px}.navbar-container{min-height:55px;padding:3% 5%}.navbar-logo{max-width:50%}.navbar-logo-image{max-width:120px;height:35px}.navbar-toggle{min-width:40px;padding:8px 10px}.hamburger-line{width:20px;height:2px;margin:4px 0}.navbar-sidebar-header{min-height:70px;padding:6%}.navbar-section-title{padding:0 7%;font-size:.6rem}.navbar-link{gap:8px;padding:5% 7%}.navbar-icon{font-size:1rem}.navbar-text{font-size:.8rem}.navbar-logout{padding:5%;font-size:.8rem}}@media (width<=375px){.navbar-sidebar{width:85%;min-width:220px}.navbar-logo-image{max-width:100px;height:32px}.hamburger-line{width:18px}}@media (width>=1600px){.navbar-sidebar{width:18%;min-width:280px}}@media (width<=1599px) and (width>=1200px){.navbar-sidebar{width:22%;min-width:260px}}@media (width<=1199px) and (width>=992px){.navbar-sidebar{width:28%;min-width:260px;max-width:300px}.navbar-logo-image{max-width:180px;height:45px}}@media (width<=991px) and (width>=768px){.navbar-sidebar{width:35%;min-width:280px;max-width:320px}.navbar-container{padding:2.5% 4%}.navbar-logo-image{max-width:160px;height:42px}.navbar-text{font-size:.85rem}}@media (width<=767px) and (width>=576px){.navbar-sidebar{width:50%;min-width:260px;max-width:340px}.navbar-container{min-height:60px;padding:3% 4%}.navbar-logo-image{max-width:140px;height:38px}.hamburger-line{width:22px}.navbar-section-title{font-size:.65rem}}@media (width<=575px){.navbar-sidebar{width:75%;min-width:240px;max-width:280px}.navbar-container{min-height:55px;padding:3% 5%}.navbar-logo{max-width:50%}.navbar-logo-image{max-width:120px;height:35px}.navbar-toggle{min-width:40px;padding:8px 10px}.hamburger-line{width:20px;height:2px;margin:4px 0}.navbar-sidebar-header{min-height:70px;padding:6%}.navbar-section-title{padding:0 7%;font-size:.6rem}.navbar-link{gap:8px;padding:5% 7%}.navbar-icon{font-size:1rem}.navbar-text{font-size:.8rem}.navbar-logout{padding:5%;font-size:.8rem}}@media (width<=375px){.navbar-sidebar{width:85%;min-width:220px}.navbar-logo-image{max-width:100px;height:32px}.hamburger-line{width:18px}}.navbar-text{font-size:.9rem}@media (width>=1600px){.navbar-sidebar{width:18%;min-width:280px}}@media (width<=1599px) and (width>=1200px){.navbar-sidebar{width:22%;min-width:260px}}@media (width<=1199px) and (width>=992px){.navbar-sidebar{width:28%;min-width:260px;max-width:300px}.navbar-logo-image{max-width:180px;height:45px}}@media (width<=991px) and (width>=768px){.navbar-sidebar{width:35%;min-width:280px;max-width:320px}.navbar-container{padding:2.5% 4%}.navbar-logo-image{max-width:160px;height:42px}.navbar-text{font-size:.85rem}}@media (width<=767px) and (width>=576px){.navbar-sidebar{width:50%;min-width:260px;max-width:340px}.navbar-container{min-height:60px;padding:3% 4%}.navbar-logo-image{max-width:140px;height:38px}.hamburger-line{width:22px}.navbar-section-title{font-size:.65rem}}@media (width<=575px){.navbar-sidebar{width:75%;min-width:240px;max-width:280px}.navbar-container{min-height:55px;padding:3% 5%}.navbar-logo{max-width:50%}.navbar-logo-image{max-width:120px;height:35px}.navbar-toggle{min-width:40px;padding:8px 10px}.hamburger-line{width:20px;height:2px;margin:4px 0}.navbar-sidebar-header{min-height:70px;padding:6%}.navbar-section-title{padding:0 7%;font-size:.6rem}.navbar-link{gap:8px;padding:5% 7%}.navbar-icon{font-size:1rem}.navbar-text{font-size:.8rem}.navbar-logout{padding:5%;font-size:.8rem}}@media (width<=375px){.navbar-sidebar{width:85%;min-width:220px}.navbar-logo-image{max-width:100px;height:32px}.hamburger-line{width:18px}}.navbar{z-index:1000;background-color:#fff;width:100%;position:sticky;top:0;box-shadow:0 2px 4px #0000001a}.navbar-container{align-items:center;max-width:100%;min-height:70px;margin:0 auto;padding:2% 3%;display:flex}.navbar-toggle{cursor:pointer;background:0 0;border:none;border-radius:4px;min-width:45px;margin-right:auto;padding:1% 1.5%}.navbar-toggle:hover{background:0 0}.hamburger-line{color:#6b7280;background-color:#666;width:25px;height:2px;margin:5px 0;display:block}.navbar-logo{position:absolute;left:50%;transform:translate(-50%)}.navbar-logo-image{width:auto;max-width:200px;height:50px}.navbar-overlay{z-index:1500;background-color:#00000080;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.navbar-overlay.active{display:block}.navbar-sidebar{z-index:2000;background-color:#fff;width:20%;min-width:260px;max-width:320px;height:100vh;transition:left .3s;position:fixed;top:0;left:-100%;overflow-y:auto;box-shadow:2px 0 8px #0000001a}.navbar-sidebar.open{left:0}.navbar-sidebar-header{background-color:#f9f9f9;border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;min-height:80px;padding:5%;display:flex}.navbar-sidebar-logo-image{width:auto;max-width:80%;height:40px}.navbar-sidebar-logo-text{color:#aab2a6;font-size:1.5rem;font-weight:700}.navbar-close{cursor:pointer;color:#666;background:0 0;border:none;padding:2%;font-size:24px}.navbar-close:hover{color:#dc2626}.navbar-sidebar-nav{padding:5% 0}.navbar-section{margin-bottom:8%}.navbar-section-title{color:#999;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3%;padding:0 6%;font-size:.7rem;font-weight:700}.navbar-menu{margin:0;padding:0;list-style:none}.navbar-item{width:100%}.navbar-link{color:#333;border-left:3px solid #0000;align-items:center;gap:10px;padding:4% 6%;text-decoration:none;transition:all .2s;display:flex}.navbar-link:hover{background-color:#f5f5f5;border-left-color:#aab2a6}.navbar-link.active{color:#aab2a6;background-color:#f0f2ef;border-left-color:#aab2a6;font-weight:600}.navbar-icon{min-width:20px;font-size:1.1rem}.navbar-text{flex:1;font-size:.9rem}.navbar-badge{color:#fff;background-color:#aab2a6;border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:2px 6px;font-size:.7rem;font-weight:600;display:flex}.navbar-sidebar-footer{background-color:#f9f9f9;border-top:1px solid #e5e5e5;margin-top:auto;padding:5%}.navbar-logout{cursor:pointer;color:#333;background:0 0;border:none;border-radius:4px;align-items:center;gap:10px;width:100%;padding:4%;font-size:.9rem;transition:all .2s;display:flex}.navbar-logout:hover{color:#dc2626;background-color:#fee2e2}body.menu-open{overflow:hidden}@media (width>=1600px){.navbar-sidebar{width:18%;min-width:280px}}@media (width<=1599px) and (width>=1200px){.navbar-sidebar{width:22%;min-width:260px}}@media (width<=1199px) and (width>=992px){.navbar-sidebar{width:28%;min-width:260px;max-width:300px}.navbar-logo-image{max-width:180px;height:45px}}@media (width<=991px) and (width>=768px){.navbar-sidebar{width:35%;min-width:280px;max-width:320px}.navbar-container{padding:2.5% 4%}.navbar-logo-image{max-width:160px;height:42px}.navbar-text{font-size:.85rem}}@media (width<=767px) and (width>=576px){.navbar-sidebar{width:50%;min-width:260px;max-width:340px}.navbar-container{min-height:60px;padding:3% 4%}.navbar-logo-image{max-width:140px;height:38px}.hamburger-line{width:22px}.navbar-section-title{font-size:.65rem}}@media (width<=575px){.navbar-sidebar{width:75%;min-width:240px;max-width:280px}.navbar-container{min-height:55px;padding:3% 5%}.navbar-logo{max-width:50%}.navbar-logo-image{max-width:120px;height:35px}.navbar-toggle{min-width:40px;padding:8px 10px}.hamburger-line{width:20px;height:2px;margin:4px 0}.navbar-sidebar-header{min-height:70px;padding:6%}.navbar-section-title{padding:0 7%;font-size:.6rem}.navbar-link{gap:8px;padding:5% 7%}.navbar-icon{font-size:1rem}.navbar-text{font-size:.8rem}.navbar-logout{padding:5%;font-size:.8rem}}@media (width<=375px){.navbar-sidebar{width:85%;min-width:220px}.navbar-logo-image{max-width:100px;height:32px}.hamburger-line{width:18px}}:root{--color-primary:#4c4d4f;--color-secondary:#aab2a6;--color-tertiary:#aab2a6;--color-light:#e6e7e8;--color-white:#fff;--color-accent:#aab2a6;--color-text:#333;--color-text-muted:#6b7280;--spacing-xs:.75rem;--spacing-sm:1.25rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;--spacing-xxl:6rem;--spacing-section:8rem;--content-width:80%;--content-max-width:1400px;--font-heading:"Playfair Display", Georgia, serif;--font-body:"Plus Jakarta Sans", "Segoe UI", sans-serif;--duration:.8s;--easing:cubic-bezier(.25, .46, .45, .94)}.home{--h-sage:#95a090;--h-sage-dark:#7a8675;--h-navy:#2b3a4a;--h-sand:#e6e8e3;--h-sand-light:#f4f5f2;--h-border:#eef0ec;--h-serif:"Playfair Display", Georgia, serif;--h-sans:"Plus Jakarta Sans", "Segoe UI", sans-serif;width:100%;font-family:var(--h-sans);overflow-x:hidden}.home h1,.home h2,.home h3{font-family:var(--h-serif)}.btn{letter-spacing:.05em;text-transform:uppercase;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;font-family:var(--font-body);background:0 0;border:2px solid #fff;border-radius:0;padding:.9rem 2.2rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-block;position:relative;overflow:hidden}.btn-primary:hover,.btn-secondary:hover{background:#ffffff26;transform:translateY(-2px)}.section-kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--color-text);margin-bottom:var(--spacing-sm);font-size:.75rem;font-weight:500;display:block}.section-title{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--color-primary);margin:.35rem 0 .17rem;font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:400;line-height:1.35}.section-subtitle{margin:.5rem 0 var(--spacing-lg);color:var(--color-text-muted);font-size:1rem;font-weight:400;line-height:1.7}.link-arrow{color:var(--color-accent);letter-spacing:.08em;transition:all .3s var(--easing);text-transform:uppercase;align-items:center;gap:8px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.link-arrow:after{content:"→";transition:transform .3s var(--easing)}.link-arrow:hover:after{transform:translate(5px)}.contact-cta{width:var(--content-width);max-width:var(--content-max-width);margin:var(--spacing-section) auto}.contact-wrapper{border-radius:4px;grid-template-columns:1fr 1fr;min-height:500px;display:grid;overflow:hidden}.contact-image{position:relative;overflow:hidden}.contact-image img{object-fit:cover;object-position:center;width:100%;height:100%}.contact-content{padding:var(--spacing-xxl);background:var(--color-light);flex-direction:column;justify-content:center;display:flex}.contact-title{font-family:var(--font-heading);margin-bottom:var(--spacing-md);color:var(--color-primary);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:400;line-height:1.3}.contact-description{margin-bottom:var(--spacing-lg);color:var(--color-text-muted);font-size:1rem;line-height:1.8}.contact-content .btn{color:#000;border-color:#000;align-self:flex-start}.contact-content .btn:hover{color:#fff}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.home .hero{background:var(--h-sand-light);width:100%;padding:2rem clamp(1rem,3vw,2rem)}.home .hero-frame{background:#fff;border:1px solid #f1f2f0;border-radius:1rem;grid-template-columns:5fr 7fr;max-width:1280px;min-height:75vh;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 20px 40px -12px #2b3a4a2e}.home .hero-container{align-items:center;padding:clamp(2rem,5vw,3.5rem);display:flex}.home .hero-content{opacity:0;animation:1s ease-out .3s forwards fadeInUp}.home .hero-label{letter-spacing:.2em;text-transform:uppercase;color:var(--h-sage);margin-bottom:1.25rem;font-size:.75rem;font-weight:600}.home .hero-label:before{content:"";background:var(--h-sage);width:2.5rem;height:4px;margin-bottom:1.5rem;display:block}.home .hero-heading{letter-spacing:0;color:var(--h-navy);margin-bottom:1.5rem;font-size:clamp(2.2rem,4.2vw,3.25rem);font-weight:600;line-height:1.15}.home .hero-description{color:#4b5563;max-width:34rem;margin-bottom:2rem;font-size:1rem;font-weight:300;line-height:1.7}.home .hero-buttons{flex-wrap:wrap;gap:1rem;display:flex}.home .btn{letter-spacing:.12em;font-size:.72rem;font-weight:700;font-family:var(--h-sans);border-radius:999px;padding:.9rem 1.6rem}.home .btn-primary{background:var(--h-sage);border-color:var(--h-sage);color:#fff}.home .btn-primary:hover{background:var(--h-sage-dark);border-color:var(--h-sage-dark);transform:none}.home .btn-secondary{color:var(--h-navy);background:0 0;border-color:#d1d5db}.home .btn-secondary:hover{background:#f9fafb;transform:none}.home .hero-background{min-height:350px;position:relative;overflow:hidden}.home .hero-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.home .hero-overlay{background:linear-gradient(90deg,#2b3a4a1f,#0000 40%);position:absolute;inset:0}.home .features-section{background:#fff;padding:5rem 0}.home .features-section .container{max-width:1150px}.home .section-header.center{text-align:center;max-width:36rem;margin:0 auto 1.5rem}.home .section-header.center .section-kicker{color:var(--h-sage);margin-bottom:.4rem;font-weight:700}.home .section-header.center .section-title{color:var(--h-navy);font-size:clamp(1.75rem,3vw,2rem);font-weight:600}.home .features-intro{color:#6b7280;text-align:center;opacity:0;max-width:44rem;margin:0 auto 4rem;font-size:1rem;font-weight:300;line-height:1.9}.home .features-intro.animated{animation:fadeIn var(--duration) var(--easing) forwards}.home .features-grid{grid-template-columns:repeat(3,1fr);gap:2.5rem 3rem;display:grid}.home .feature-card{text-align:center;opacity:0;transition:opacity .6s var(--easing);background:0 0;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex}.home .feature-card.animated{opacity:1}.home .feature-card:hover{box-shadow:none;background:0 0;border-color:#0000;transform:none}.home .feature-title{color:var(--h-navy);flex-direction:column;align-items:center;gap:1.25rem;font-size:1.1rem;font-weight:700;line-height:1.3;display:flex}.home .feature-title svg{box-sizing:border-box;background:var(--h-sand);width:4rem;height:4rem;color:var(--h-navy);border-radius:50%;padding:1.05rem}.home .feature-description{color:#6b7280;max-width:18rem;margin:.85rem auto 0;font-size:.85rem;line-height:1.6}.home .featured-stack{background:var(--h-sand-light);flex-direction:column;gap:4rem;padding:5rem clamp(1rem,4vw,1.5rem);display:flex}.home .content-section.featured-section{background:#fff;border:1px solid #f1f2f0;border-radius:1rem;grid-template-columns:1fr 1fr;align-items:stretch;gap:0;width:100%;max-width:1150px;margin:0 auto;padding:0;display:grid;overflow:hidden;box-shadow:0 1px 3px #2b3a4a0f}.home .content-section.reverse{direction:rtl}.home .content-section.reverse>*{direction:ltr}.home .featured-section .section-image-container{border-radius:0;min-height:320px;position:relative;overflow:hidden}.home .featured-section .section-image{object-fit:cover;width:100%;height:100%;min-height:0;transition:transform .6s var(--easing);position:absolute;inset:0}.home .featured-section .section-image-container:hover .section-image{transform:scale(1.04)}.home .section-image-container[data-animate]{opacity:0;transition:opacity .8s var(--easing)}.home .section-image-container[data-animate].animated{opacity:1}.home .featured-section .section-text-wrapper{opacity:0;transition:opacity .8s var(--easing);align-items:center;padding:clamp(2rem,5vw,3.5rem);display:flex}.home .featured-section .section-text-wrapper.animated{opacity:1}.home .featured-section .section-header{flex-direction:column;align-items:flex-start;display:flex}.home .featured-section .section-title{color:var(--h-navy);margin:0 0 1rem;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:700;line-height:1.3}.home .featured-section .section-title:first-letter{text-transform:uppercase}.home .featured-section .section-subtitle{color:#6b7280;margin:0 0 1.5rem;font-size:.95rem}.home .featured-section .link-arrow{letter-spacing:.1em;color:var(--h-navy);font-size:.75rem;font-weight:700}.home .featured-section .link-arrow:hover{color:var(--h-sage)}.home .portfolio-section{background:var(--h-sand);padding:5rem 0}.home .portfolio-section .section-header.center{margin-bottom:2.5rem}.home .portfolio-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;max-width:1150px;margin:0 auto;display:grid}.home .portfolio-card{aspect-ratio:4/3;background:var(--h-navy);cursor:pointer;opacity:0;transition:opacity .6s var(--easing), transform .5s var(--easing), box-shadow .5s var(--easing);border-radius:1rem;align-items:flex-end;text-decoration:none;display:flex;position:relative;overflow:hidden;transform:translateY(20px)}.home .portfolio-card.animated{opacity:1;transform:translateY(0)}.home .portfolio-card.animated:hover{transform:translateY(-6px);box-shadow:0 20px 40px -12px #2b3a4a4d}.home .card-image-bg{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--easing);position:absolute;inset:0}.home .portfolio-card:hover .card-image-bg{transform:scale(1.06)}.home .card-overlay{background:linear-gradient(#0000000d,#2b3a4a8c);position:absolute;inset:0}.home .portfolio-card.no-image{background:#fff;border:1px solid #e5e7eb;justify-content:center;align-items:center}.home .portfolio-card.no-image .card-image-bg,.home .portfolio-card.no-image .card-overlay{display:none}.home .card-content{z-index:2;text-align:center;width:100%;padding:1.5rem;position:relative}.home .card-title{letter-spacing:.08em;text-transform:uppercase;color:var(--h-navy);flex-direction:column;align-items:center;gap:.6rem;margin-bottom:.35rem;font-size:1.2rem;font-weight:600;display:flex}.home .card-title svg{color:var(--h-sage);font-size:2rem}.home .card-subtitle{letter-spacing:.12em;text-transform:uppercase;color:#6b7280;font-size:.75rem;font-weight:500}@media (width<=1000px){:root{--content-width:90%;--spacing-section:5rem;--spacing-xxl:4rem}.contact-wrapper{grid-template-columns:1fr}.home .hero-frame{grid-template-columns:1fr;min-height:0}.home .hero-background{order:-1;min-height:280px}.home .features-grid{grid-template-columns:repeat(2,1fr)}.home .content-section.featured-section,.home .content-section.reverse{direction:ltr;grid-template-columns:1fr}.home .featured-section .section-image-container{min-height:280px}}@media (width<=768px){:root{--content-width:92%;--spacing-section:3rem;--spacing-xxl:2.5rem;--spacing-lg:2rem}.home .hero-background{display:none}.home .hero{padding:1rem}.home .hero-buttons{flex-direction:column}.home .hero-buttons .btn{text-align:center;width:100%}.home .features-section,.home .portfolio-section{padding:3.5rem 0}.home .features-grid{grid-template-columns:1fr;gap:1rem}.home .featured-stack{gap:2rem;padding:3rem 1rem}.home .portfolio-grid{grid-template-columns:1fr}.home .card-title{font-size:1.05rem}}@media (prefers-reduced-motion:reduce){.home .hero-content{opacity:1;animation:none}}.table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;width:100%;overflow:auto hidden;box-shadow:0 4px 20px #00000014}.fixed-table{table-layout:fixed;border-collapse:collapse;min-width:1200px;width:100%!important}.fixed-table th{color:#475569;text-transform:uppercase;text-align:left;background-color:#f8fafc;border-bottom:2px solid #e2e8f0;padding:20px 15px;font-size:.75rem;font-weight:700}.fixed-table td{color:#334155;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #f1f5f9;padding:16px 15px;font-size:.9rem;overflow:hidden}.id-cell{color:#94a3b8;font-family:monospace;font-size:.75rem}.bold-cell{color:#0f172a;font-weight:700}.price-cell{color:#0f172a;font-weight:800}.status-pill{text-transform:uppercase;border-radius:9999px;padding:5px 12px;font-size:.7rem;font-weight:700;display:inline-block}.status-pill.available{color:#166534;background-color:#dcfce7}.status-pill.sold{color:#991b1b;background-color:#fee2e2}.status-pill.pending{color:#854d0e;background-color:#fef9c3}.status-pill.reserved{color:#3730a3;background-color:#e0e7ff}.customer-cell{padding:12px 15px!important}.customer-info{flex-direction:column;display:flex}.customer-name{color:#334155;font-size:.875rem;font-weight:500}.no-customer{color:#94a3b8;font-size:.8rem;font-style:italic}.actions-cell{text-align:center}.action-buttons{justify-content:center;gap:8px;display:flex}.fixed-table .action-btn{cursor:pointer;transition:all .2s;box-shadow:none!important;width:auto!important;min-width:auto!important;height:auto!important;font-size:inherit!important;text-align:center!important;background-color:#0000!important;border:none!important;border-radius:6px!important;outline:none!important;justify-content:center!important;align-items:center!important;padding:8px!important;font-weight:400!important;display:flex!important;position:static!important}.fixed-table .action-btn:after{content:none!important;border:none!important;width:0!important;height:0!important;display:none!important}.fixed-table .action-btn:focus{box-shadow:none!important;outline:none!important}.fixed-table .action-btn:focus-visible{outline-offset:2px;outline:2px solid #3b82f6!important}.fixed-table .action-btn svg{display:block}.fixed-table .edit-btn{color:#0ea5e9!important;background-color:#0000!important;border:1px solid #e0f2fe!important}.fixed-table .edit-btn:hover{color:#0284c7!important;background-color:#f0f9ff!important;transform:none!important}.fixed-table .delete-btn{color:#fff!important;background-color:#ef4444!important;border:none!important}.fixed-table .delete-btn:hover{background-color:#dc2626!important;transform:none!important}.users-cell{padding:12px 15px!important}.assigned-users-list{flex-direction:column;gap:6px;display:flex}.assigned-user-item{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assigned-user-item .user-name{color:#334155;font-size:.85rem;font-weight:500}.no-users{color:#94a3b8;font-size:.8rem;font-style:italic}.role-badge.customer,.role-badge.contractor,.role-badge.salesperson{color:#4b5563;background:#e5e7eb}.app-footer{color:#aab2a6;background-color:#fff;border-top:1px solid #0000001a;margin-top:auto;padding:clamp(20px,5vw,40px) 0}.footer-inner{text-align:center;grid-template-columns:1fr auto 1fr;place-items:start center;gap:clamp(20px,4vw,40px);width:90%;max-width:1400px;margin:0 auto;display:grid}.home-footer .footer-inner{grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,28px)}.home-footer .footer-title{color:#2c3531}.footer-section{flex-direction:column;flex:1;align-items:center;min-width:0;display:flex}.footer-section-contact{justify-content:center}.footer-title-group{align-items:center;gap:10px;margin-bottom:15px;display:flex}.footer-section-icon{color:#aab2a6;font-size:clamp(1rem,2vw,1.2rem)}.footer-title{color:#aab2a6;text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:clamp(.9rem,2vw,1.1rem);font-weight:700}.footer-item-with-icon{align-items:center;gap:8px;display:flex}.footer-mini-icon{color:#aab2a6;font-size:clamp(.8rem,1.5vw,.9rem)}.footer-item{color:#000;margin:0;font-size:clamp(12px,2vw,14px)}.footer-link{color:#000;font-size:clamp(12px,2vw,14px);text-decoration:none;transition:color .2s}.footer-section-middle{flex-direction:column;justify-content:flex-start;align-items:center;gap:20px;padding:0 clamp(10px,3vw,20px);display:flex}.footer-vertical-divider{opacity:.3;background-color:#aab2a6;width:1px;height:clamp(60px,15vw,100px)}.footer-contact-link{color:#fff;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background-color:#aab2a6;border:none;border-radius:8px;align-items:center;gap:6px;margin-top:0;padding:clamp(8px,1.5vw,10px) clamp(12px,2vw,16px);font-size:clamp(13px,2vw,15px);font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.footer-contact-link:hover{background-color:#8a9287;transform:translateY(-1px)}.footer-arrow-icon{font-size:clamp(14px,2vw,16px);transition:transform .3s}.footer-contact-link:hover .footer-arrow-icon{transform:translate(4px)}.footer-bottom{text-align:center;border-top:1px solid #0000000d;width:90%;max-width:1400px;margin:clamp(15px,3vw,30px) auto 0;padding-top:clamp(10px,2vw,20px)}.footer-copyright{opacity:.7;color:#000;font-size:clamp(11px,2vw,13px)}@media (width<=992px){.footer-inner{gap:clamp(20px,4vw,30px)}.footer-vertical-divider{height:clamp(50px,12vw,80px)}}@media (width<=768px){.footer-inner,.home-footer .footer-inner{grid-template-columns:1fr;gap:clamp(20px,5vw,30px)}.footer-section{width:100%;max-width:400px}.footer-section-middle{padding:clamp(10px,3vw,20px) 0}.footer-vertical-divider{width:clamp(60px,20vw,100px);height:1px}.footer-title-group,.footer-item-with-icon{justify-content:center}.footer-bottom{margin-top:clamp(10px,3vw,20px);padding-top:clamp(8px,2vw,15px)}}@media (width<=480px){.app-footer{padding:clamp(15px,4vw,25px) 0}.footer-inner{gap:clamp(15px,4vw,25px);width:95%}.footer-section{max-width:100%}.footer-contact-link{padding:clamp(8px,2vw,10px) clamp(10px,3vw,14px);font-size:clamp(11px,3vw,13px)}}.app-footer[data-project=proj-001-foresta]{--icon-primary:#a9b3aa;--icon-secondary:#89938a}.app-footer[data-project=proj-002-panorama]{--icon-primary:#545454;--icon-secondary:#737373}.app-footer{background:#fff;border-top:1px solid #e6e6e6;margin-top:auto;padding:3% 1.5%}.footer-inner{align-items:start;gap:40px;max-width:1400px;margin:0 auto;padding:0 10%;display:flex;justify-content:space-between!important}.app-footer[data-project] .footer-inner{justify-content:space-between;gap:clamp(24px,5vw,72px);padding:0 5%}.app-footer[data-project] .footer-section-middle{flex:0 auto;min-width:180px}.app-footer[data-project] .footer-contact-link{justify-content:center}.footer-section{flex-direction:column;flex:1;align-items:center;display:flex}.footer-icon{width:48px;height:48px;color:var(--icon-primary,#aab2a6);justify-content:center;align-items:center;margin-bottom:1%;display:flex}.footer-icon svg{width:32px;height:32px}.footer-title{color:#4a4a4a;text-align:center;margin:0 0 1%;font-size:18px;font-weight:700;line-height:1.4}.app-footer[data-project] .footer-title{color:var(--charcoal-gray,#2c3531)}.footer-content{flex-direction:column;align-items:center;gap:8px;display:flex}.footer-item{color:#4a4a4a;text-align:center;margin:0;font-size:15px;line-height:1.5}.footer-item-with-icon{align-items:center;gap:8px;margin-top:4px;display:flex}.footer-mini-icon{color:var(--icon-primary,#aab2a6);flex-shrink:0;font-size:.9rem}.footer-link{color:var(--icon-primary,#aab2a6);font-size:15px;line-height:1.5;text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--icon-secondary,#3a7a8c);text-decoration:underline}.footer-bottom{text-align:center;border-top:1px solid #e6e6e6;margin-top:2%;padding-top:1.5%}.footer-copyright{color:#4a4a4a;opacity:.8;margin:0;font-size:14px}.project-overview-page .footer-inner{padding:0 5% 0 20%}@media (width<=1024px){.app-footer{padding:2.5% 1.5%}.footer-inner{gap:2.5%}.footer-icon{width:40px;height:40px;margin-bottom:1.25%}.footer-icon svg{width:28px;height:28px}.footer-title{margin-bottom:1.25%;font-size:17px}.footer-item,.footer-link{font-size:14px}}@media (width<=768px){.app-footer{padding:2% 2.5%}.footer-inner{grid-template-columns:1fr;gap:2.5%}.footer-section{width:100%}.app-footer[data-project] .footer-inner{align-items:center;gap:24px;padding:0 5%}.app-footer[data-project] .footer-section-middle{width:100%;min-width:0}.footer-icon{width:44px;height:44px;margin-bottom:1.5%}.footer-icon svg{width:30px;height:30px}.footer-title{margin-bottom:1.5%;font-size:18px}.footer-content{gap:.75%}.footer-bottom{margin-top:2.5%;padding-top:2%}.footer-item,.footer-link{font-size:15px}}@media (width<=480px){.app-footer{padding:1.5% 2%}.footer-inner{gap:2.25%}.footer-icon{width:40px;height:40px;margin-bottom:1.25%}.footer-icon svg{width:26px;height:26px}.footer-title{margin-bottom:1.25%;font-size:17px}.footer-bottom{margin-top:2.25%;padding-top:1.75%}.footer-item,.footer-link{font-size:14px}}.lots-page{background-color:var(--color-white);min-height:100vh;font-family:var(--font-body);flex-direction:column;display:flex}.lots-content{width:100%;padding:0 0 var(--spacing-xl) 0;flex-direction:column;flex:1;align-items:center;display:flex}.lots-header-section{text-align:center;width:100%;padding:var(--spacing-xl) var(--spacing-md);margin-top:0;margin-bottom:0;transition:background-color .4s}.manage-lots-header{padding:5rem 2rem;background-color:#aab2a6!important}.manage-lots-header h1{margin:.5rem 0;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:600;color:#fff!important}.manage-lots-actions{width:var(--content-width);max-width:var(--content-max-width);justify-content:space-between;align-items:center;gap:16px;margin:0 auto 2rem;padding:1.5rem 0;display:flex}.manage-lots-actions .back-btn{cursor:pointer;color:#1e293b;background:#fff;border:1px solid #ddd;border-radius:8px;align-items:center;gap:8px;padding:12px 20px;font-size:1rem;font-weight:500;transition:all .2s;display:flex}.manage-lots-actions .back-btn:hover{background-color:#f8f9fa;border-color:#aab2a6;transform:translateY(-1px)}.manage-lots-actions .add-lot-btn{color:#fff;cursor:pointer;background-color:#aab2a6;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 20px;font-size:1rem;font-weight:500;transition:all .2s;display:flex;box-shadow:0 2px 4px #aab2a64d}.manage-lots-actions .add-lot-btn:hover:not(:disabled){background-color:#96a18e;transform:translateY(-1px);box-shadow:0 4px 8px #aab2a666}.manage-lots-actions .add-lot-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (width<=768px){.manage-lots-actions{flex-direction:column;align-items:stretch}.manage-lots-actions .back-btn,.manage-lots-actions .add-lot-btn{justify-content:center;width:100%}}.lots-header-section h1{font-family:var(--font-heading);padding-bottom:var(--spacing-sm);margin:0;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:400;line-height:1.2;display:inline-block;position:relative}.header-underline{width:50%;height:2px;transition:background-color .4s;position:absolute;bottom:0;left:25%}.toolbar-section{width:var(--content-width);max-width:var(--content-max-width);margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;gap:15px;display:flex}.search-box{flex:1}.search-input{width:100%;font-family:var(--font-body);border:1px solid var(--color-light);background-color:var(--color-white);color:var(--color-text);transition:border-color .3s var(--easing);border-radius:0;padding:1rem 1.2rem;font-size:.95rem}.filter-group{gap:10px;display:flex}.filter-select{border:1px solid var(--color-light);background-color:var(--color-white);font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);cursor:pointer;min-width:160px;transition:all .3s var(--easing);border-radius:0;padding:1rem 1.2rem;font-size:.85rem;font-weight:600}.filter-select:hover{background-color:var(--color-light);border-color:var(--color-secondary)}.lots-image-section{width:var(--content-width);max-width:var(--content-max-width);margin-bottom:var(--spacing-xl);background-color:var(--color-white);border:1px solid var(--color-tertiary);padding:var(--spacing-lg);box-sizing:border-box;align-items:center;flex-direction:column!important;display:flex!important}.status-available{background-color:#4ade80!important}.status-available{animation:2s infinite mapPulse}@keyframes mapPulse{0%{box-shadow:0 0 #4ade80b3}70%{box-shadow:0 0 0 10px #4ade8000}to{box-shadow:0 0 #4ade8000}}.lots-hero-text{text-align:center;margin-top:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-direction:column;gap:8px;display:flex}.exclusive-tag{font-family:var(--font-body);letter-spacing:.25em;color:var(--color-primary);text-transform:uppercase;margin:0;font-size:.9rem;font-weight:700}.peace-tag{font-family:var(--font-heading);color:var(--color-text);opacity:.85;margin:0;font-size:1.8rem;font-style:italic}.lots-header-section .exclusive-tag{color:#ffffffbf;margin-bottom:var(--spacing-sm);font-size:.85rem}.lots-header-section .peace-tag{color:#ffffffe6;margin-top:var(--spacing-sm);opacity:1}.list-section{width:var(--content-width);max-width:var(--content-max-width);margin-top:var(--spacing-sm)}@media (width<=767px){.lots-image-section{display:none!important}}@media (width<=1024px){.toolbar-section{flex-direction:column;align-items:stretch}}@media (width<=767px){.lots-image-section{display:none!important}}.lots-image-section{box-sizing:border-box;background-color:#fff;border-radius:12px;align-items:center;width:90vw;max-width:1600px;margin-bottom:30px;padding:25px;box-shadow:0 1px 3px #0000001a;flex-direction:column!important;display:flex!important}.map-wrapper{width:35%;min-width:320px;display:inline-block;position:relative}.phase-map-image{border-radius:8px;height:auto;display:block;width:100%!important}.lot-map-button{cursor:pointer;z-index:100;text-indent:-9999px;white-space:nowrap;border:2px solid #fff;border-radius:50%;width:14px;height:14px;padding:0;transition:transform .2s;position:absolute;overflow:hidden;box-shadow:0 2px 4px #0000004d}.lot-map-button:hover{z-index:101;transform:scale(1.5)}@keyframes pulse-green{0%{box-shadow:0 0 #4ade80b3}70%{box-shadow:0 0 0 8px #4ade8000}to{box-shadow:0 0 #4ade8000}}.status-available{animation:2s infinite pulse-green;background-color:#4ade80!important}.status-sold{background-color:#f87171!important}.status-reserved{background-color:#fbbf24!important}.map-legend{border-top:1px solid #f1f5f9;justify-content:center;gap:30px;width:100%;margin-top:30px;padding-top:20px;display:flex}.legend-item{color:#475569;align-items:center;gap:10px;font-size:.95rem;font-weight:500;display:flex}.legend-dot{border:1px solid #0000001a;border-radius:50%;width:14px;height:14px;display:inline-block}.lot-modal-overlay{backdrop-filter:blur(4px);z-index:9999;background:#0f172ab3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lot-modal-content{background:#fff;border-radius:12px;width:90%;max-width:400px;padding:24px;position:relative;box-shadow:0 20px 25px -5px #0000001a}.close-modal{cursor:pointer;color:#64748b;background:0 0;border:none;font-size:24px;position:absolute;top:10px;right:15px}.living-environment-page{background:var(--color-white,#fff);width:100%;min-height:100vh;padding:0 0 var(--spacing-xl,4rem) 0}.le-header-section{width:100%;margin:0 auto var(--spacing-xxl,6rem) auto;text-align:center;padding:var(--spacing-section,8rem) var(--spacing-lg,2rem);background:var(--primary-color,#4c4d4f);color:#fff;margin-top:0}.le-header-section.full-width-le{width:100%;margin:0 auto var(--spacing-xxl,6rem);padding:var(--spacing-section,8rem) var(--spacing-lg,2rem)}.le-main-title,.le-subtitle,.le-subtitle-last{font-family:var(--font-heading,"Georgia", "Times New Roman", serif);letter-spacing:.05em;color:var(--primary-color,var(--color-primary,#4c4d4f));margin:.5rem 0;font-weight:400;line-height:1.2}.le-main-title,.le-subtitle{font-size:clamp(2rem,5vw,3rem)}.le-subtitle-last{margin-bottom:var(--spacing-md,2rem);font-size:clamp(2rem,5vw,3rem)}.le-tagline{color:var(--tertiary-color,var(--color-text-muted,#6b7280));margin-top:var(--spacing-sm,1.25rem);font-size:clamp(1rem,2.5vw,1.5rem);font-style:italic;font-weight:300;font-family:var(--font-body,"Segoe UI", sans-serif)}.le-description-section{margin-bottom:var(--spacing-xxl,6rem);padding:0 var(--spacing-md,2rem)}.le-section-title{text-align:center;font-family:var(--font-heading,"Georgia", "Times New Roman", serif);letter-spacing:.2em;max-width:26ch;margin:0 auto var(--spacing-md,2rem) auto;color:var(--primary-color,#4c4d4f);font-size:clamp(1.35rem,2.8vw,1.75rem);font-weight:400;line-height:1.55}.le-description-text{color:var(--color-text,#333);text-align:center;max-width:900px;font-size:clamp(1rem,2vw,1.2rem);line-height:1.8;font-family:var(--font-body,"Segoe UI", sans-serif);margin:0 auto}.le-proximity-section{margin-bottom:var(--spacing-xxl,6rem);padding:0 var(--spacing-md,2rem)}.le-amenities-grid{gap:var(--spacing-md,2rem);max-width:var(--content-max-width,1400px);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:0 auto;display:grid}.le-amenity-box{padding:var(--spacing-lg,3rem) var(--spacing-md,2rem);text-align:center;transition:all .3s var(--easing,cubic-bezier(.25, .46, .45, .94));cursor:pointer;border:1.5px solid var(--primary-color,#628db5);background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a}.le-footer-section{text-align:center;padding:var(--spacing-xl,4rem) var(--spacing-md,2rem);border-top:1px solid var(--color-light,#e6e7e8);position:relative}.le-amenity-box:hover{transform:translateY(-8px);box-shadow:0 12px 24px #00000026}.le-amenity-icon{color:var(--color-white,#fff);margin-bottom:var(--spacing-sm,1.25rem);justify-content:center;align-items:center;font-size:3rem;display:flex}.le-amenity-label{color:var(--color-white,#fff);text-transform:uppercase;letter-spacing:.05em;word-wrap:break-word;font-size:1rem;font-weight:600;font-family:var(--font-body,"Segoe UI", sans-serif);margin:0}.le-footer-section{text-align:center;padding:var(--spacing-xl,4rem) var(--spacing-md,2rem);border-top:1px solid var(--color-light,#e6e7e8)}.le-footer-text{color:var(--color-text-muted,#6b7280);font-size:clamp(1rem,2vw,1.2rem);font-style:italic;font-weight:400;font-family:var(--font-body,"Segoe UI", sans-serif)}@media (width<=768px){.living-environment-page{padding:var(--spacing-md,2rem) 0}.le-header-section{margin-bottom:var(--spacing-lg,3rem);padding:var(--spacing-md,2rem) var(--spacing-sm,1.25rem);width:96%;margin-left:2%;margin-right:2%}.le-main-title,.le-subtitle,.le-subtitle-last{font-size:clamp(1.5rem,6vw,2rem)}.le-tagline{font-size:clamp(.9rem,3vw,1.1rem)}.le-description-section,.le-proximity-section{margin-bottom:var(--spacing-lg,3rem)}.le-description-text{text-align:left;font-size:1rem}.le-section-title{margin-bottom:var(--spacing-md,2rem);letter-spacing:.16em;max-width:24ch;font-size:clamp(1.2rem,4.5vw,1.45rem)}.le-amenities-grid{gap:var(--spacing-sm,1.25rem);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.le-amenity-box{padding:var(--spacing-md,2rem) var(--spacing-sm,1.25rem)}.le-amenity-icon{font-size:2.5rem}.le-amenity-label{font-size:.85rem}.le-footer-section{padding:var(--spacing-md,2rem) var(--spacing-sm,1.25rem)}.le-footer-text{font-size:.95rem}}@media (width<=480px){.living-environment-page{padding:var(--spacing-sm,1.25rem) 0}.le-header-section{padding:var(--spacing-sm,1.25rem)}.le-main-title,.le-subtitle,.le-subtitle-last{letter-spacing:.03em;font-size:clamp(1.3rem,5vw,1.5rem)}.le-tagline{font-size:.9rem}.le-description-text{font-size:.95rem}.le-section-title{margin-bottom:var(--spacing-md,2rem);letter-spacing:.14em;max-width:22ch;font-size:1.12rem}.le-amenities-grid{gap:var(--spacing-xs,.75rem);grid-template-columns:repeat(2,1fr)}.le-amenity-box{padding:var(--spacing-sm,1.25rem) var(--spacing-xs,.75rem)}.le-amenity-icon{margin-bottom:var(--spacing-xs,.75rem);font-size:2rem}.le-amenity-label{font-size:.75rem}.le-footer-text{font-size:.85rem}}.error-message{text-align:center;padding:var(--spacing-xl,4rem) var(--spacing-md,2rem);max-width:700px;margin:0 auto}.error-message h2{color:var(--primary-color,#4c4d4f);font-family:var(--font-heading,"Georgia", "Times New Roman", serif);margin-bottom:var(--spacing-md,2rem);font-size:clamp(1.5rem,4vw,2rem)}.error-message p{color:var(--color-text,#333);margin-bottom:var(--spacing-sm,1.25rem);font-size:1rem;line-height:1.6}.error-details{border-left:4px solid var(--primary-color,#4c4d4f);padding:var(--spacing-md,2rem);margin:var(--spacing-md,2rem) 0;text-align:left;background:#f9f9f9}.error-details ul{margin-top:var(--spacing-sm,1.25rem);padding-left:0;list-style:none}.error-details li{color:#555;padding:.5rem 0}.error-details code{background:#e0e0e0;border-radius:4px;padding:.2rem .5rem;font-family:Courier New,monospace;font-size:.9em}.btn{cursor:pointer;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;text-decoration:none;transition:all .3s;display:inline-block}.btn-secondary{background-color:var(--primary-color,#4c4d4f);color:#fff}.multi-user-selector{width:100%;position:relative}.multi-user-selector-input{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;justify-content:space-between;align-items:center;min-height:42px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;display:flex}.multi-user-selector-input:hover{border-color:#aaa}.multi-user-selector-input.open{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.selected-users-chips{flex-wrap:wrap;flex:1;gap:6px;display:flex}.user-chip{background:#f0f4f8;border:1px solid #d1d5db;border-radius:16px;align-items:center;gap:6px;padding:4px 8px;font-size:13px;display:inline-flex}.chip-name{color:#374151;font-weight:500}.chip-remove{color:#6b7280;cursor:pointer;background:#e5e7eb;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:14px;transition:background-color .2s,color .2s;display:flex}.chip-remove:hover{color:#fff;background:#dc2626}.multi-user-selector .placeholder{color:#9ca3af;font-size:14px}.multi-user-selector .dropdown-arrow{color:#6b7280;margin-left:8px;font-size:10px;transition:transform .2s}.multi-user-selector .dropdown-arrow.up{transform:rotate(180deg)}.multi-user-selector-dropdown{z-index:1000;background:#fff;border:1px solid #ddd;border-radius:8px;max-height:300px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.multi-user-selector-dropdown .search-box{border-bottom:1px solid #eee;padding:10px}.multi-user-selector-dropdown .search-input{border:1px solid #ddd;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-size:14px}.multi-user-selector-dropdown .search-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.multi-user-selector-dropdown .users-list{max-height:220px;padding:6px;overflow-y:auto}.multi-user-selector-dropdown .user-option{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;transition:background-color .15s;display:flex}.multi-user-selector-dropdown .user-option:hover{background:#f3f4f6}.multi-user-selector-dropdown .user-option.selected{background:#eff6ff}.multi-user-selector-dropdown .user-checkbox{align-items:center;display:flex}.multi-user-selector-dropdown .user-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.multi-user-selector-dropdown .user-info{flex:1;min-width:0}.multi-user-selector-dropdown .user-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.multi-user-selector-dropdown .user-name{color:#1f2937;font-size:14px;font-weight:500}.multi-user-selector-dropdown .user-email{color:#6b7280;margin-top:2px;font-size:12px}.multi-user-selector-dropdown .loading,.multi-user-selector-dropdown .no-results{text-align:center;color:#6b7280;padding:20px;font-size:14px}.role-badge{text-transform:uppercase;color:#4b5563;background:#e5e7eb;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.role-badge.customer,.role-badge.contractor,.role-badge.salesperson{color:#4b5563;background:#e5e7eb}.lot-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.lot-modal{background:#fff;border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.lot-modal-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:24px;display:flex}.lot-modal-header h2{color:#333;margin:0;font-size:1.5rem}.lot-modal-close{cursor:pointer;color:#999;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:all .2s;display:flex}.lot-modal-close:hover:not(:disabled){color:#666;background-color:#f5f5f5}.lot-modal-close:disabled{opacity:.5;cursor:not-allowed}.lot-form{padding:24px}.form-group{flex-direction:column;margin-bottom:20px;display:flex}.form-group label{color:#333;margin-bottom:6px;font-size:14px;font-weight:500}.form-group input,.form-group select{background-color:#fff;border:1px solid #ddd;border-radius:6px;padding:12px 16px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.form-group input:disabled,.form-group select:disabled{cursor:not-allowed;background-color:#f8f9fa}.form-group input.error{border-color:#e74c3c}.error-text{color:#e74c3c;margin-top:4px;font-size:12px}.info-message{color:#1976d2;background-color:#e3f2fd;border-left:3px solid #1976d2;border-radius:6px;align-items:center;gap:6px;margin-top:8px;padding:10px 14px;font-size:13px;line-height:1.4;display:flex}.form-actions{border-top:1px solid #eee;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:20px;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:6px;min-width:100px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s}.btn-primary{color:#fff;background-color:#007bff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-primary:disabled{cursor:not-allowed;background-color:#6c757d}.btn-secondary{color:#fff;background-color:#6c757d}.btn-secondary:hover:not(:disabled){background-color:#5a6268}@media (width<=768px){.lot-modal{max-height:calc(100vh - 20px);margin:10px}.form-row{grid-template-columns:1fr}.lot-modal-header,.lot-form{padding:16px}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.confirmation-modal-overlay{z-index:1001;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirmation-modal{background:#fff;border-radius:8px;width:100%;max-width:400px;box-shadow:0 10px 30px #0000004d}.confirmation-modal-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:20px;display:flex}.confirmation-modal-header h3{color:#333;margin:0;font-size:1.25rem}.confirmation-modal-close{cursor:pointer;color:#999;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:20px;transition:all .2s;display:flex}.confirmation-modal-close:hover:not(:disabled){color:#666;background-color:#f5f5f5}.confirmation-modal-close:disabled{opacity:.5;cursor:not-allowed}.confirmation-modal-body p{color:#666;margin:0;line-height:1.5}.confirmation-modal-actions{border-top:1px solid #eee;justify-content:flex-end;gap:12px;padding:20px;display:flex}.btn-cancel,.btn-confirm{cursor:pointer;border:none;border-radius:6px;min-width:80px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.btn-confirm{color:#fff;background-color:#007bff}.btn-confirm:hover:not(:disabled){background-color:#0056b3}.btn-confirm.destructive{background-color:#dc3545}.btn-confirm.destructive:hover:not(:disabled){background-color:#c82333}.btn-confirm:disabled{cursor:not-allowed;background-color:#6c757d}@media (width<=480px){.confirmation-modal{margin:10px}.confirmation-modal-actions{flex-direction:column-reverse}.btn-cancel,.btn-confirm{width:100%}}.admin-projects-page{background-color:var(--background-color);flex-direction:column;min-height:100vh;display:flex}.admin-projects-content{flex:1;justify-content:center;width:100%;padding:3% 0 12%;display:flex}.admin-projects-container{width:80%;max-width:1400px;margin:0 auto}.admin-projects-header{justify-content:space-between;align-items:center;margin-bottom:4%;display:flex}.admin-projects-header h1{font-family:var(--font-heading);color:var(--color-primary);margin:0;font-size:clamp(2.5rem,5vw,3.5rem)}.admin-create-project-button{background-color:var(--color-primary);color:var(--color-white);cursor:pointer;transition:background .3s var(--easing);border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:500}.admin-create-project-button:hover{background:var(--color-primary)}.admin-projects-loading{text-align:center;color:var(--text-secondary);padding:2rem}.admin-projects-error{color:#c33;text-align:center;background-color:#fee;border:1px solid #fcc;border-radius:8px;margin:1rem 0;padding:1rem}.admin-projects-error p{margin:0 0 1rem}.admin-retry-button{color:#fff;cursor:pointer;background-color:#4d85b9;border:none;border-radius:6px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:background-color .3s}.admin-retry-button:hover{background-color:#1565c0}.no-projects{text-align:center;color:var(--text-secondary);padding:3rem}.admin-projects-filter{flex-direction:row;justify-content:center;align-items:center;gap:20px;margin-bottom:5%;display:flex}.admin-search-container{width:100%;max-width:500px;position:relative}.admin-search-input{width:100%;font-size:1rem;font-family:var(--font-body);border:1px solid var(--color-secondary);background-color:var(--color-white);color:var(--color-text);transition:all .3s var(--easing);box-shadow:none;border-radius:4px;padding:1rem 1.5rem}.admin-search-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #4c4d4f1a}.status-filter{font-size:1rem;font-family:var(--font-body);border:1px solid var(--color-secondary);background-color:var(--color-white);color:var(--color-text);cursor:pointer;transition:all .3s var(--easing);border-radius:4px;min-width:200px;padding:.75rem 1.5rem}.status-filter:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #4c4d4f1a}.status-filter:hover{border-color:var(--color-primary)}.admin-projects-grid{grid-template-columns:repeat(2,1fr);justify-items:center;gap:4%;margin-bottom:10%;display:grid}.admin-project-card{border-radius:var(--border-radius);box-shadow:var(--box-shadow);transition:var(--transition);text-align:center;background-color:#e5edf5;flex-direction:column;align-items:center;width:100%;max-width:350px;padding:5%;display:flex;position:relative}.admin-project-card:hover{transform:translateY(-2%);box-shadow:0 6px 16px #00000026}.admin-projects-page .container,.admin-projects-page .portfolio-section .container,.admin-projects-page.projects-page .container,.admin-projects-page.projects-page .portfolio-section .container{width:98%!important;max-width:2000px!important;padding:0 2rem!important}.admin-projects-page .portfolio-section{width:100%!important;padding-left:0!important;padding-right:0!important}.admin-projects-page .portfolio-grid,.admin-projects-page .portfolio-section .portfolio-grid{grid-template-columns:repeat(2,1fr)!important;place-items:stretch stretch!important;gap:4rem 3rem!important;width:100%!important;display:grid!important}.admin-projects-page .project-item,.admin-projects-page .portfolio-grid .project-item{flex-direction:column!important;width:100%!important;max-width:100%!important;display:flex!important}.admin-projects-page .portfolio-card,.admin-projects-page .portfolio-grid .portfolio-card,.admin-projects-page .project-item .portfolio-card,.admin-projects-page .project-item .portfolio-card.project-hover-card{width:100%!important;max-width:100%!important;min-height:500px!important;aspect-ratio:unset!important;flex:1!important;align-self:stretch!important;display:flex!important;position:relative!important;overflow:hidden!important}.admin-projects-page .card-image-bg,.admin-projects-page .portfolio-card .card-image-bg,.admin-projects-page .project-item .portfolio-card .card-image-bg,.admin-projects-page .portfolio-card img.card-image-bg{object-fit:fill!important;object-position:center!important;width:100%!important;min-width:100%!important;height:100%!important;min-height:100%!important;display:block!important;position:absolute!important;inset:0!important}.admin-projects-page .card-overlay{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.admin-projects-page .card-content{width:100%!important;padding:2.5rem!important}.admin-projects-page .project-hover-content{flex-direction:column!important;justify-content:center!important;align-items:center!important;width:100%!important;height:100%!important;display:flex!important}.admin-projects-page .card-title{font-size:2rem!important}.admin-projects-page .admin-project-actions{margin-top:1.5rem}.project-card-archived{opacity:.85;background-color:#f5f5f5;border:2px solid #9ca3af}.project-card-archived:hover{opacity:.95;border-color:#6b7280}.archived-badge{color:#fff;letter-spacing:.5px;text-transform:uppercase;z-index:10;background-color:#dc2626;border-radius:20px;padding:6px 12px;font-size:.75rem;font-weight:600;position:absolute;top:12px;right:12px;box-shadow:0 2px 4px #0003}.admin-project-image-container{aspect-ratio:16/9;border-radius:var(--border-radius);background-color:var(--white);width:100%;margin-bottom:5%;overflow:hidden}.admin-project-image{object-fit:cover;width:100%;height:100%;transition:var(--transition)}.admin-project-card:hover .admin-project-image{transform:scale(1.05)}.admin-project-title{color:var(--text-primary);margin-bottom:4%;font-size:1.5rem;font-weight:600}.admin-project-description{color:var(--text-secondary);flex-grow:1;margin-bottom:5%;font-size:.95rem;line-height:1.6}.admin-project-actions{flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;display:flex}.admin-project-button{cursor:pointer;transition:background .2s var(--easing), color .2s var(--easing);text-align:center;border:none;border-radius:6px;justify-content:center;align-items:center;margin:.25rem auto;padding:.5rem 1.25rem;font-size:1rem;font-weight:500;text-decoration:none;display:flex;background:var(--color-light)!important;color:var(--color-primary)!important}.mobile-project-actions{display:none}.admin-edit-button,.admin-lots-button,.archive-button{cursor:pointer;transition:background .2s var(--easing), color .2s var(--easing);text-align:center;border:none;border-radius:6px;justify-content:center;align-items:center;margin:.25rem 0;padding:.5rem 1.25rem;font-size:1rem;font-weight:500;text-decoration:none;display:flex;background:var(--color-light)!important;color:var(--color-primary)!important}.admin-project-button:hover,.admin-edit-button:hover,.admin-lots-button:hover,.archive-button:hover{background:var(--color-secondary)!important;color:var(--color-primary)!important}.project-hover-content .admin-project-actions{flex-direction:column;justify-content:center;align-items:center;width:100%;margin-top:1.5rem;display:flex}.admin-projects-filter .filter-trigger{color:#111827;box-shadow:var(--box-shadow);cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:.95rem;line-height:1;display:inline-flex}.admin-projects-filter .filter-trigger:hover{background:#f9fafb}.admin-projects-filter .filter-icon{color:currentColor;display:inline-block}.admin-projects-filter .filter-menu{z-index:100;background:#fff;border:1px solid #e5e7eb;border-radius:8px;min-width:200px;padding:8px;box-shadow:0 10px 30px #0000001f}.admin-projects-filter .filter-option{text-align:left;color:#111827;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:6px;width:100%;padding:10px 12px;font-size:.95rem}.admin-projects-filter .filter-option:hover{background:#f3f4f6}.admin-projects-filter .filter-option.active{color:#fff;background:#2563eb}@media (width<=1200px){.admin-projects-container{width:85%}.admin-projects-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.admin-projects-container{width:90%}.admin-projects-header h1{font-size:2rem}.admin-projects-grid{grid-template-columns:1fr;gap:6%}.admin-project-title{font-size:1.3rem}.admin-project-button{width:80%}}@media (width<=480px){.admin-projects-container{width:95%}.admin-projects-content{padding:3% 0 15%}.admin-projects-header h1{font-size:1.8rem}.admin-search-input{padding:4% 6%}.admin-project-button{width:90%}}.project-hover-card{position:relative;overflow:hidden}.project-hover-image{transition:filter .4s var(--easing), transform .4s var(--easing)}.project-hover-overlay{transition:background .4s var(--easing)}.project-hover-content{opacity:0;pointer-events:none;z-index:2;width:100%;height:100%;color:var(--color-white);transition:opacity .4s var(--easing);background:0 0;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.project-hover-card:hover .project-hover-image,.project-hover-card:focus-within .project-hover-image{filter:brightness(.6)blur(.5px);transform:scale(1.04)}.project-hover-card:hover .project-hover-overlay,.project-hover-card:focus-within .project-hover-overlay{background:#00000040}.project-hover-card:hover .project-hover-content,.project-hover-card:focus-within .project-hover-content{opacity:1;pointer-events:auto}.project-hover-content .card-title{color:var(--color-primary);font-family:var(--font-heading);background:#ffffffd9;border-radius:6px;margin-bottom:1rem;padding:.5rem 1rem;font-size:1.25rem;font-weight:600;box-shadow:0 2px 8px #0000000a}.project-hover-content .admin-project-actions{margin-top:1.5rem}.project-hover-content .admin-project-button,.project-hover-content .admin-edit-button,.project-hover-content .admin-lots-button,.project-hover-content .archive-button{box-sizing:border-box;text-align:center;justify-content:center;align-items:center;width:90%;min-width:180px;max-width:220px;margin:.25rem 0;display:flex}@media (width<=768px){.project-hover-content .admin-project-actions{display:none!important}.mobile-project-actions{display:block}.mobile-actions-dropdown summary{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;list-style:none}.mobile-actions-dropdown summary::-webkit-details-marker{display:none}.portfolio-grid{flex-direction:column!important;gap:2rem!important;display:flex!important}.portfolio-card{width:100%!important;max-width:100%!important;margin:0 auto!important}.mobile-project-actions{flex-direction:column;align-items:stretch;width:100%;margin-top:1rem;display:flex}.mobile-actions-dropdown{width:100%;margin-top:.5rem}.mobile-actions-btn{cursor:pointer;text-align:center;border:none;border-radius:6px;justify-content:center;align-items:center;width:100%;margin-bottom:.5rem;padding:.5rem 1.25rem;font-size:1rem;font-weight:500;display:flex;background:var(--color-primary)!important;color:var(--color-white)!important}.mobile-actions-dropdown-list{background:var(--color-light);z-index:10;border-radius:6px;width:100%;margin-top:.25rem;padding:.5rem 0;position:relative;box-shadow:0 2px 8px #00000014}.mobile-actions-dropdown-list button,.mobile-actions-dropdown-list a{color:var(--color-primary);text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:.75rem 1rem;font-size:1rem;display:block}.mobile-actions-dropdown-list button:hover,.mobile-actions-dropdown-list a:hover{background:var(--color-secondary);color:var(--color-white)}}.create-project-page{background-color:var(--background-color,#f5f5f5);flex-direction:column;min-height:100vh;padding:2rem 0;display:flex}.create-project-container{background-color:#fff;border-radius:8px;width:90%;max-width:900px;margin:0 auto;padding:2rem;box-shadow:0 2px 8px #0000001a}.create-project-header{margin-bottom:2rem}.create-project-header h1{color:var(--text-primary,#333);margin:0;font-size:2rem}.create-project-step-indicator{color:var(--text-primary,#333);border-bottom:1px solid #e0e0e0;margin-bottom:1rem;padding-bottom:.75rem;font-size:.95rem;font-weight:600}.language-switcher{border-bottom:2px solid #e0e0e0;justify-content:flex-end;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;display:flex}.lang-indicator{color:#999;background-color:#f5f5f5;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:500}.lang-indicator.active{color:#fff;background-color:#4d85b9}.create-project-overlay{-ms-overflow-style:none;scrollbar-width:none;overflow:hidden!important}.create-project-overlay::-webkit-scrollbar{display:none}.create-project-modal{box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none;max-width:100%;max-height:calc(100vh - 4rem);overflow:hidden auto}.create-project-modal::-webkit-scrollbar{display:none}.create-project-form{flex-direction:column;gap:2rem;min-width:0;max-width:100%;display:flex;overflow-x:hidden}.create-project-step-fields{-ms-overflow-style:none;scrollbar-width:none;min-height:420px;max-height:70vh;overflow:hidden auto}.create-project-step-fields::-webkit-scrollbar{display:none}.create-project-step-fields .form-section{box-sizing:border-box;min-width:0;max-width:100%}.form-section{box-sizing:border-box;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem;overflow-x:hidden}.create-project-form .form-section:last-of-type{margin-bottom:0}.form-section h2,.form-section h3{color:var(--text-primary,#333);border-bottom:2px solid #4d85b9;margin:0 0 1.5rem;padding-bottom:.5rem;font-size:1.3rem}.form-group:last-child{margin-bottom:0}.form-group label{color:var(--text-primary,#333);margin-bottom:.5rem;font-weight:500;display:block}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{border:2px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .3s}.form-group input[type=date]{accent-color:#4d85b9;cursor:pointer;border:2px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .3s}.form-group input[type=date]:focus{border-color:#4d85b9;outline:none}.form-group input[type=color]{cursor:pointer;border:2px solid #d1d5db;border-radius:6px;width:100%;height:50px;padding:0}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#4d85b9;outline:none}.form-group input.error,.form-group textarea.error,.form-group select.error{border-color:#dc3545}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;min-width:0;display:grid}.form-row-three-col,.create-project-form .form-row.form-row-three-col{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.create-project-file-input-hidden{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed;top:0;left:-9999px}.create-project-file-trigger-wrap{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.create-project-file-trigger{cursor:pointer;color:var(--text-primary,#333);background-color:#f9f9f9;border:2px solid #d1d5db;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:border-color .3s,background-color .3s;display:inline-block}.create-project-file-trigger:hover{background-color:#f0f7fc;border-color:#4d85b9}.create-project-file-status{color:#6b7280;font-size:.95rem}.create-project-cover-preview{object-fit:contain;border:1px solid #e0e0e0;border-radius:6px;width:100%;max-width:400px;max-height:240px;display:block}.create-project-cover-actions{grid-template-columns:11rem 11rem;gap:.75rem;width:max-content;max-width:100%;margin-top:.75rem;display:grid}.create-project-cover-actions>*{box-sizing:border-box;width:100%;min-width:0}.create-project-cover-actions .create-project-cover-btn,.create-project-cover-actions .btn-cancel.create-project-cover-btn{text-transform:none;letter-spacing:normal;box-sizing:border-box;color:#fff;cursor:pointer;white-space:nowrap;-webkit-appearance:none;appearance:none;background-color:#6c757d;border:2px solid #5a6268;border-radius:6px;justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;height:2.75rem;min-height:2.75rem;padding:.5rem .75rem;font-family:inherit;font-size:1rem;font-weight:500;line-height:1.25;transition:all .3s;display:inline-flex;box-shadow:0 1px 3px #0000001f}.create-project-cover-actions .create-project-cover-btn:hover,.create-project-cover-actions .btn-cancel.create-project-cover-btn:hover:not(:disabled){background-color:#5a6268;box-shadow:0 2px 4px #00000026}.create-project-file-trigger-inline{cursor:pointer;margin-bottom:0;text-decoration:none}.error-message{color:#dc3545;margin-top:.5rem;font-size:.875rem;display:block}.error{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;margin-bottom:1rem;padding:1rem}.validation-alert{color:#a15c00;background-color:#fff4e5;border:1px solid #ffd7a8;border-radius:6px;margin:0 0 1rem;padding:12px 16px;font-size:.95rem}.lot-selector{flex-direction:column;gap:1rem;display:flex}.lot-selector-header{justify-content:flex-end;margin-bottom:.5rem;display:flex}.btn-create-lot{color:#fff;cursor:pointer;background-color:#4d85b9;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:background-color .3s}.btn-create-lot:hover{background-color:#1565c0}.create-lot-form{background-color:#f0f8fa;border:2px solid #4d85b9;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.create-lot-form h3{color:var(--text-primary,#333);margin:0 0 1rem;font-size:1.1rem}.create-lot-form .form-group{margin-bottom:1rem}.create-lot-form .form-group label{color:var(--text-primary,#333);margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.create-lot-form .form-group input,.create-lot-form .form-group select{border:2px solid #d1d5db;border-radius:6px;width:100%;padding:.5rem;font-size:.9rem}.create-lot-form .form-group input:focus,.create-lot-form .form-group select:focus{border-color:#4d85b9;outline:none}.create-lot-actions{justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.create-lot-actions .btn-cancel,.create-lot-actions .btn-submit{cursor:pointer;box-sizing:border-box;border-radius:6px;min-width:10rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.create-lot-actions .btn-cancel{border:2px solid #5a6268}.create-lot-actions .btn-submit{border:none}.language-switch-message{color:#1976d2;text-align:center;background-color:#e3f2fd;border-radius:6px;margin-bottom:1rem;padding:1rem;font-weight:500}.lot-selector-search{margin-bottom:1rem}.lot-search-input{border:2px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem;font-size:1rem}.lot-selector-list{border:2px solid #e0e0e0;border-radius:6px;flex-direction:column;max-height:300px;padding:.5rem;display:flex;overflow-y:auto}.lot-item{box-sizing:border-box;cursor:pointer;border:1px solid #e0e0e0;border-radius:6px;align-items:center;gap:1rem;width:100%;max-width:100%;margin-bottom:.5rem;padding:1rem;transition:background-color .2s;display:flex}.lot-item:hover{background-color:#f0f8fa}.lot-item.selected{background-color:#e3f2fd;border-color:#4d85b9}.lot-item input[type=checkbox]{cursor:pointer;width:20px;height:20px}.lot-item-details{flex:1}.lot-item-location{color:var(--text-primary,#333);margin-bottom:.25rem;font-weight:600}.lot-item-info{color:var(--text-secondary,#666);gap:1rem;font-size:.875rem;display:flex}.draft-lots-section{border-top:2px solid #e0e0e0;width:100%;margin-top:1rem;padding-top:1rem;display:block}.draft-lots-section .lot-selector-list{flex-direction:column;width:100%;display:flex}.draft-lots-section .lot-item-draft{flex:none;min-width:0}.lot-item-draft{box-sizing:border-box;cursor:default;background-color:#f0f8fa;border:1px solid #e0e0e0;border-left:3px solid #2d7d5e;border-radius:6px;align-items:flex-start;gap:1rem;width:100%;max-width:100%;margin-bottom:.5rem;padding:1rem;transition:background-color .2s;display:flex}.lot-item-draft:hover{background-color:#e8f4f0}.lot-item-draft .lot-item-details{flex:1}.lot-item-draft-remove{color:#666;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:6px;flex-shrink:0;width:28px;height:28px;padding:0;font-size:1.25rem;line-height:1;transition:background-color .2s,color .2s}.lot-item-draft-remove:hover{color:#991b1b;background-color:#fee2e2;border-color:#f87171}.lot-selector-empty,.lot-selector-loading,.lot-selector-error{text-align:center;color:var(--text-secondary,#666);padding:2rem}.lot-selector-error{color:#dc3545}.selected-lots{border-top:2px solid #e0e0e0;margin-top:1rem;padding-top:1rem}.selected-lots-header{color:var(--text-primary,#333);margin-bottom:.75rem;font-weight:600}.selected-lots-chips{flex-wrap:wrap;gap:.5rem;display:flex}.lot-chip{color:#fff;background-color:#4d85b9;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;display:flex}.lot-chip-remove{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:1.2rem;transition:background-color .2s;display:flex}.lot-chip-remove:hover{background-color:#fff3}.lot-chip-draft{background-color:#2d7d5e}.lot-chip-draft .lot-chip-draft-label{margin-right:.25rem;font-weight:600}.form-actions{border-top:2px solid #e0e0e0;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:.5rem;padding-top:1.5rem;display:flex}.form-actions .btn-cancel,.form-actions .btn-submit{cursor:pointer;box-sizing:border-box;border-radius:6px;min-width:10rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.form-actions .btn-cancel{border:2px solid #5a6268}.form-actions .btn-submit{border:none}.btn-cancel{color:#fff;background-color:#6c757d}.btn-cancel:hover:not(:disabled){background-color:#5a6268}.btn-submit{color:#fff;background-color:#4d85b9}.btn-submit:hover:not(:disabled){background-color:#1565c0}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed}@keyframes slideUpEnter{0%{opacity:0;transform:translateY(200px)}to{opacity:1;transform:translate(0,0)}}.lang-slide-up{will-change:transform, opacity;transform-origin:bottom;animation:.48s cubic-bezier(.22,.61,.36,1) both slideUpEnter}@keyframes langSlideEnter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translate(0,0)}}.slide-up-enter{will-change:transform, opacity;animation:.38s cubic-bezier(.25,.46,.45,.94) both langSlideEnter}@media (width<=768px){.create-project-container{width:95%;padding:1.5rem}.form-row{grid-template-columns:1fr}.create-project-form .form-row.form-row-three-col{grid-template-columns:repeat(3,1fr)}.form-actions{flex-direction:column}.form-actions .btn-cancel,.form-actions .btn-submit{width:100%;min-width:unset}}.edit-project-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.edit-project-modal{background-color:#fff;border-radius:8px;width:90%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 2px 8px #0000001a}.edit-project-form{flex-direction:column;gap:2rem;padding:2rem;display:flex}.edit-project-form h2{color:var(--text-primary,#333);margin:0 0 2rem;font-size:2rem}.edit-project-form .form-section{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.edit-project-form .form-section h3{color:var(--text-primary,#333);border-bottom:2px solid #4d85b9;margin:0 0 1.5rem;padding-bottom:.5rem;font-size:1.3rem}.edit-project-form .form-group{margin-bottom:1.5rem}.edit-project-form .form-group:last-child{margin-bottom:0}.edit-project-form .form-group label{color:var(--text-primary,#333);margin-bottom:.5rem;font-weight:500;display:block}.edit-project-form .required{color:#dc2626}.edit-project-form .form-group input[type=text],.edit-project-form .form-group input[type=number],.edit-project-form .form-group select,.edit-project-form .form-group textarea{border:2px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.edit-project-form .form-group input[type=date]{accent-color:#4d85b9;cursor:pointer;border:2px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.edit-project-form .form-group input[type=date]:focus,.edit-project-form .form-group input:focus,.edit-project-form .form-group select:focus,.edit-project-form .form-group textarea:focus{border-color:#4d85b9;outline:none}.edit-project-form .form-group input:disabled,.edit-project-form .form-group select:disabled,.edit-project-form .form-group textarea:disabled{cursor:not-allowed;opacity:.6;background-color:#f3f4f6}.edit-project-form .form-group input.error,.edit-project-form .form-group select.error,.edit-project-form .form-group textarea.error{border-color:#dc3545}.edit-project-form .form-group textarea{resize:vertical;min-height:120px}.edit-project-form .error-message{color:#dc3545;margin-top:.5rem;font-size:.875rem;display:block}.edit-project-form .form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.edit-project-form .form-group input[type=color]{cursor:pointer;border:2px solid #d1d5db;border-radius:6px;width:100%;height:50px;padding:0}.edit-project-form .form-actions{border-top:2px solid #e0e0e0;justify-content:flex-end;gap:1rem;margin-top:0;padding-top:1rem;display:flex}.edit-project-form .btn-cancel,.edit-project-form .btn-submit{cursor:pointer;border:none;border-radius:6px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .3s}.edit-project-form .btn-cancel{color:#fff;background-color:#6c757d}.edit-project-form .btn-cancel:hover:not(:disabled){background-color:#5a6268}.edit-project-form .btn-submit{color:#fff;background-color:#4d85b9}.edit-project-form .btn-submit:hover:not(:disabled){background-color:#1565c0}.edit-project-form .btn-cancel:disabled,.edit-project-form .btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.edit-project-modal{width:95%;max-height:95vh}.edit-project-form{padding:1.5rem}.edit-project-form h2{font-size:1.5rem}.edit-project-form .form-section h3{font-size:1.1rem}.edit-project-form .form-row{grid-template-columns:1fr}.edit-project-form .form-actions{flex-direction:column}.edit-project-form .btn-cancel,.edit-project-form .btn-submit{width:100%}}.confirmation-modal-overlay{z-index:1000;background-color:#000c;justify-content:center;align-items:center;width:100%;height:100%;animation:.2s ease-in fadeIn;display:flex;position:fixed;top:0;left:0}.confirmation-modal-content{background:#fff;border-radius:8px;width:90%;max-width:450px;animation:.3s ease-out slideUp;box-shadow:0 4px 20px #00000026}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirmation-modal-header{border-bottom:1px solid #e5e7eb;padding:20px 24px}.confirmation-modal-header h2{color:#111827;margin:0;font-size:1.25rem;font-weight:600}.confirmation-modal-body{padding:24px}.confirmation-modal-body p{color:#4b5563;margin:0;font-size:.95rem;line-height:1.6}.confirmation-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.btn-cancel{cursor:pointer;border-radius:6px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.btn-confirm{background-color:var(--button-primary-bg);color:var(--button-primary-text);cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.btn-confirm:hover{background-color:var(--button-primary-hover)}.btn-confirm-destructive{background-color:var(--button-danger-bg);color:var(--button-danger-text);cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.btn-confirm-destructive:hover{background-color:var(--button-danger-hover)}@media (width<=480px){.confirmation-modal-content{width:95%;margin:0 10px}.confirmation-modal-header{padding:16px 20px}.confirmation-modal-header h2{font-size:1.1rem}.confirmation-modal-body{padding:20px}.confirmation-modal-footer{flex-direction:column;padding:12px 20px}.btn-cancel,.btn-confirm,.btn-confirm-destructive{width:100%}}:root{--color-primary:#4c4d4f;--color-secondary:#aab2a6;--color-light:#ecedee;--color-white:#fff;--color-accent:#aab2a6;--color-text:#333;--color-text-muted:#6b7280;--spacing-xs:.75rem;--spacing-sm:1.25rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;--spacing-xxl:6rem;--spacing-section:8rem;--content-width:80%;--content-max-width:1400px;--font-heading:"Playfair Display", Georgia, serif;--font-body:"Plus Jakarta Sans", "Segoe UI", sans-serif;--duration:.8s;--easing:cubic-bezier(.25, .46, .45, .94)}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-white);-webkit-font-smoothing:antialiased;line-height:1.6}.projects-page{background:var(--color-white);width:100%;overflow-x:hidden}.projects-page.loading-state{justify-content:center;align-items:center;min-height:100vh;display:flex}.container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.page-loader{z-index:9999;background:#fff;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:fixed;inset:0}.loader-spinner{border:4px solid #4c4d4f33;border-top-color:#4c4d4f;border-radius:50%;width:60px;height:60px;animation:1s linear infinite spin}.projects-hero{width:100%;padding:var(--spacing-section) 0;text-align:center;background:linear-gradient(145deg,#aab2a6,#8a9287)}.projects-hero-content{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.section-kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--color-white);margin-bottom:var(--spacing-sm);opacity:.9;font-size:.75rem;font-weight:500;display:block}.projects-title{font-family:var(--font-heading);color:var(--color-white);margin-bottom:var(--spacing-md);letter-spacing:-.01em;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400;line-height:1.2}.projects-subtitle{color:var(--color-white);opacity:.95;max-width:700px;margin:0 auto;font-size:1.1rem;font-weight:300;line-height:1.7}.projects-search-container{padding:var(--spacing-md) 0 var(--spacing-sm);background:var(--color-white)}.search-box{width:100%;max-width:100%;margin:0 auto;position:relative}.search-input{width:100%;font-size:1rem;font-family:var(--font-body);border:1px solid var(--color-secondary);background-color:var(--color-white);color:var(--color-text);transition:all .3s var(--easing);box-shadow:none;border-radius:4px;padding:1rem 1.5rem}.search-input::placeholder{color:var(--color-text-muted);font-weight:300}.projects-listing{background-color:var(--color-white);padding:var(--spacing-section) 0}.projects-listing .container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.projects-grid{gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr);width:100%;display:grid}.project-card{aspect-ratio:1;background:var(--color-primary);cursor:pointer;transition:all .5s var(--easing);align-items:flex-end;display:flex;position:relative;overflow:hidden}.project-card-image{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--easing);position:absolute;top:0;left:0}.project-card-overlay{z-index:1;background:linear-gradient(#0000001a 0%,#00000080 60%,#000c 100%);width:100%;height:100%;position:absolute;top:0;left:0}.project-card-content{z-index:2;padding:var(--spacing-xl) var(--spacing-lg) var(--spacing-lg);color:var(--color-white);text-align:left;width:100%;position:relative}.project-card-title{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.5rem;font-size:1.5rem;font-weight:400}.project-card-subtitle{opacity:.95;letter-spacing:.06em;text-transform:uppercase;font-size:.85rem;font-weight:300}.project-card:hover{transform:translateY(-8px);box-shadow:0 20px 60px #0003}.project-card:hover .project-card-image{transform:scale(1.08)}.portfolio-section{padding:var(--spacing-md) 0 var(--spacing-section);background:var(--color-white)}.portfolio-section .container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.section-header.center{text-align:center;margin-bottom:var(--spacing-lg)}.section-header.center .section-kicker{margin-bottom:var(--spacing-md);display:block}.section-header.center .section-title{margin-bottom:var(--spacing-md)}.section-title:after{background:var(--color-secondary)!important}.portfolio-grid{gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr);display:grid}.portfolio-card{aspect-ratio:1;background:var(--color-primary);cursor:pointer;transition:all .5s var(--easing);opacity:1;align-items:flex-end;display:flex;position:relative;overflow:hidden;transform:none}.portfolio-card.animated{opacity:1;transform:none}.portfolio-card:first-child{animation-delay:.1s}.portfolio-card:nth-child(2){animation-delay:.2s}.portfolio-card:nth-child(3){animation-delay:.3s}.portfolio-card:nth-child(4){animation-delay:.4s}.portfolio-card:nth-child(5){animation-delay:.5s}.portfolio-card:hover .card-image-bg{transform:scale(1.08)}.portfolio-card:hover{transform:translateY(-8px);box-shadow:0 20px 60px #0003}.card-image-bg{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .6s var(--easing);position:absolute;top:0;left:0}.card-overlay{z-index:1;background:linear-gradient(#0000000d 0%,#00000026 60%,#00000040 100%);width:100%;height:100%;position:absolute;top:0;left:0}.card-content{z-index:2;padding:var(--spacing-xl) var(--spacing-lg) var(--spacing-lg);color:var(--color-white);width:100%;position:relative}.card-title{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.5rem;font-size:1.5rem;font-weight:400}.card-subtitle{opacity:.95;letter-spacing:.06em;text-transform:uppercase;font-size:.85rem;font-weight:300}.features-section{padding:var(--spacing-section) 0;background:var(--color-white)}.features-section .container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.features-intro{max-width:800px;margin:0 auto var(--spacing-xxl);color:var(--color-text-muted);text-align:center;opacity:1;font-size:1.1rem;line-height:2}.features-intro.animated{animation:fadeIn var(--duration) var(--easing) forwards}.features-grid{gap:var(--spacing-lg);grid-template-columns:repeat(3,1fr);max-width:1000px;margin:0 auto;display:grid}.feature-card{padding:var(--spacing-lg);text-align:center;background:var(--color-light);transition:all .4s var(--easing);opacity:1;border:2px solid #0000;justify-content:center;align-items:center;min-height:180px;display:flex;transform:none}.feature-card.animated{opacity:1;transform:none}.feature-card:first-child{animation-delay:.1s}.feature-card:nth-child(2){animation-delay:.15s}.feature-card:nth-child(3){animation-delay:.2s}.feature-card:nth-child(4){animation-delay:.25s}.feature-card:nth-child(5){animation-delay:.3s}.feature-card:nth-child(6){animation-delay:.35s}.feature-card:hover{border-color:var(--color-secondary);transform:translateY(-5px)}.feature-title{font-family:var(--font-heading);color:var(--color-primary);letter-spacing:.02em;transition:color .4s var(--easing);margin:0;font-weight:400;line-height:1.4;font-size:1.2rem!important}@media (width<=1024px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.projects-grid{gap:var(--spacing-md);grid-template-columns:1fr}}.no-results{text-align:center;padding:var(--spacing-xl) 0;opacity:0}.no-results.animated{animation:fadeIn var(--duration) var(--easing) forwards}.no-results p{color:var(--color-text-muted);font-size:1.1rem}.projects-pagination{margin-top:var(--spacing-lg);justify-content:center;align-items:center;gap:.75rem;display:flex}.page-btn{background:var(--color-white);min-width:44px;height:44px;color:var(--color-text);letter-spacing:.01em;cursor:pointer;border:1.5px solid #dcdcdc;border-radius:10px;padding:0 .85rem;font-weight:600;transition:all .2s;box-shadow:0 6px 14px #0000000d}.page-btn:hover{border-color:var(--color-secondary);box-shadow:0 10px 22px #00000014}.page-btn.active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white)}.page-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media (width<=1200px){:root{--content-width:90%}}@media (width<=1024px){:root{--content-width:90%;--spacing-section:5rem;--spacing-xxl:4rem}.project-section{gap:var(--spacing-lg);grid-template-columns:1fr}.project-section.reverse{direction:ltr;grid-template-columns:1fr}.section-image-container,.section-image{min-height:400px}}@media (width<=768px){:root{--content-width:92%;--spacing-section:4rem;--spacing-xxl:3rem}.projects-hero{padding:var(--spacing-lg) 0}.projects-title{font-size:2rem}.projects-subtitle{font-size:1rem}.section-image-container,.section-image{min-height:300px}.btn{padding:.8rem 1.8rem;font-size:.8rem}}@media (width<=480px){:root{--content-width:94%;--spacing-section:3rem;--spacing-xxl:2rem}.projects-title{font-size:1.5rem}.section-image-container,.section-image{min-height:250px}}.realizations-page{--r-sage-50:#f3f6f3;--r-sage-100:#e4ebe4;--r-sage-300:#a1b2a2;--r-sage-400:#8ea08f;--r-sage-500:#758876;--r-ink:#1a2530;min-height:100vh;color:var(--r-ink);font-family:var(--font-body);background-color:#fff;flex-direction:column;display:flex}.realizations-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.realizations-page .projects-hero{background:#aab2a6;padding:3rem 1rem}.realizations-page .projects-hero:before,.realizations-page .projects-hero:after{display:none}.realizations-page .projects-hero:before{width:min(90vw,560px);height:min(90vw,560px)}.realizations-page .projects-hero:after{width:min(60vw,373px);height:min(60vw,373px)}.realizations-page .projects-title{letter-spacing:0;margin-bottom:1rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400;line-height:1.1}.realizations-hero-subtitle{font-family:var(--font-body);letter-spacing:0;color:var(--color-white);margin:0;font-size:1.1rem;font-style:italic;font-weight:400}.realizations-intro{background-color:#fff;justify-content:center;width:100%;padding:clamp(4rem,7vw,5rem) 1rem;display:flex}.realizations-intro-content{text-align:center;width:100%;max-width:48rem}.realizations-intro-text{color:#4b5563;max-width:none;margin:0 auto;font-size:clamp(1rem,1.6vw,1.125rem);font-weight:300;line-height:1.75}.realizations-intro-text:after{content:"";background:var(--r-sage-300);border-radius:999px;width:3rem;height:2px;margin:1.5rem auto 0;display:block}.realizations-gallery-section{border-top:1px solid var(--r-sage-100);border-bottom:1px solid var(--r-sage-100);background-color:#f3f6f380;flex-direction:column;align-items:center;gap:1.25rem;width:100%;padding:2.5rem 0 3rem;display:flex}.realizations-gallery-container{justify-content:center;align-items:center;gap:1.25rem;width:100%;max-width:80rem;padding:0 1rem;display:flex}.realizations-gallery{flex:1;justify-content:center;min-width:0;max-width:1000px;display:flex}.gallery-image-item{background:#fff;border:1px solid #f3f4f6;border-radius:.75rem;width:100%;height:min(70vh,560px);position:relative;overflow:hidden;box-shadow:0 20px 40px -15px #1a253012}.gallery-image{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.16,1,.3,1);display:block}.gallery-image-item:hover .gallery-image{transform:scale(1.03)}.gallery-arrow{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;transition:border-color .2s,color .2s;display:flex}.gallery-arrow:hover{border-color:var(--r-sage-400);color:var(--r-sage-500);background:#fff;transform:none}.gallery-arrow:active{transform:scale(.96)}.gallery-arrow:focus-visible{outline:2px solid var(--r-sage-400);outline-offset:2px}.gallery-arrow-left svg{position:relative;left:2px}.gallery-arrow-right svg{position:relative;left:0}.gallery-counter{letter-spacing:.12em;color:#9ca3af;margin:0;font-size:.75rem;font-weight:500}.realizations-contact-link{margin-top:.25rem}@media (width<=768px){.realizations-gallery-section{padding:1.75rem 0 2.25rem}.gallery-image-item{height:min(55vh,420px)}}@media (width<=640px){.realizations-gallery-container{flex-wrap:wrap;gap:1rem}.realizations-gallery{flex-basis:100%;order:-1;max-width:none}.gallery-image-item{border-radius:.5rem;height:min(50vh,340px)}}@media (prefers-reduced-motion:reduce){.gallery-image{transition:none}}.renovations-page{width:100%;overflow-x:hidden}.renovations-page .projects-hero{width:100%;padding:var(--spacing-section) 0;text-align:center;background:linear-gradient(145deg,#aab2a6,#8a9287)}.renovations-page .projects-hero-content{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.renovations-page .projects-title{font-family:var(--font-heading);color:var(--color-white);margin-bottom:var(--spacing-md);letter-spacing:-.01em;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400;line-height:1.2}.renovations-page .projects-subtitle{color:var(--color-white);opacity:.95;max-width:700px;margin:0 auto;font-size:1.1rem;font-weight:300;line-height:1.7}.renovations-page .hero-background,.renovations-page .hero-image,.renovations-page .hero-overlay,.renovations-page .renovations-hero-bg{display:none!important}.renovations-page .projects-hero{padding-top:var(--spacing-section);padding-bottom:var(--spacing-section)}.renovations-page .hero{height:auto;min-height:auto;padding:var(--spacing-section) var(--spacing-lg);margin-bottom:var(--spacing-xl);background:linear-gradient(145deg,#6b7469,#5a6358)}.renovations-page .hero-container{max-width:900px}.renovations-page .hero-label{margin-bottom:var(--spacing-md);font-size:.75rem}.renovations-page .hero-heading{margin-bottom:var(--spacing-sm);font-size:clamp(2.5rem,5vw,3.5rem)}.renovations-page .hero-description{margin-bottom:var(--spacing-lg);font-size:1rem}.renovations-page .hero-buttons{gap:.75rem}.renovations-page .hero-buttons .btn{padding:.75rem 1.75rem;font-size:.95rem}.renovations-hero-bg{background:0 0;transform:none}.renovations-page .hero-overlay{background:linear-gradient(#00000014 0%,#00000026 100%)}.renovations-page .hero-label{color:var(--color-white);opacity:.9}.renovations-page .hero-heading{color:var(--color-white)}.renovations-page .hero-description{color:#fffffff2}.renovations-page .hero-buttons .btn{color:#333;background:#fffffff2;border:none;font-weight:600;transition:all .3s}.renovations-page .hero-buttons .btn:hover{background:var(--color-white);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.renovations-page .content-section.featured-section{background:var(--color-white);padding:var(--spacing-section) var(--spacing-lg)}.renovations-page .content-section.single-column{text-align:center;grid-template-columns:1fr}.renovations-feature-card{max-width:820px;margin:0 auto}.renovations-page .content-section.single-column .section-text-wrapper{padding:0}.renovations-page .featured-section .section-kicker{color:var(--color-primary)}.renovations-page .featured-section .section-title,.renovations-page .featured-section .section-subtitle{color:var(--color-text)}.renovations-page .featured-section .link-arrow{color:var(--color-primary)}.renovations-page__grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;display:grid}.decorative-panel{backdrop-filter:blur(2px);background:linear-gradient(135deg,#aab2a699 0%,#628db599 50%,#4c4d4fd9 100%);width:100%;height:100%;min-height:500px}.renovations-page__skeleton{background:var(--color-light);border-radius:4px;height:320px}.renovations-page__status{max-width:720px;margin:var(--spacing-lg) auto;padding:var(--spacing-md);background:var(--color-light);color:var(--color-text);border-radius:4px}.renovations-page__status--error{background:var(--color-primary);color:var(--color-white)}.renovations-page__status--empty{color:var(--color-text-muted)}.renovations-page__button{border:2px solid var(--color-white);color:var(--color-white);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.65rem 1.1rem;display:inline-flex}.renovations-page .contact-wrapper.single-column{grid-template-columns:1fr}.renovations-page .contact-cta{background:var(--color-white)}.renovations-page .contact-cta .section-kicker{color:var(--color-primary)}.renovations-page .contact-cta .contact-title{color:var(--color-text)}.renovations-page .contact-content{text-align:center}.renovations-page .contact-content .btn{align-self:center}.renovations-page .renovations-feature-card.section-header{align-items:center}.renovations-page .renovations-feature-card .section-subtitle{font-size:calc(1rem + 4pt)}.renovations-page .renovations-feature-card .link-arrow{margin-top:2.5rem}@media (width<=1024px){.renovations-page .hero{padding:var(--spacing-xl) var(--spacing-lg)}.renovations-page .hero-background{background:0 0!important}.renovations-page .hero-container{max-width:100%}.renovations-page .hero-heading{font-size:clamp(2rem,5vw,3rem)}.renovations-page .featured-section{padding:var(--spacing-xl) var(--spacing-lg)}.renovations-page__grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (width<=768px){.renovations-page .hero{padding:var(--spacing-lg) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.renovations-page .hero-background{background:0 0!important}.renovations-page .hero-label{margin-bottom:var(--spacing-sm);color:var(--color-white);font-size:.7rem}.renovations-page .hero-heading{margin-bottom:var(--spacing-sm);font-size:clamp(1.5rem,5vw,2.5rem)}.renovations-page .hero-description{margin-bottom:var(--spacing-md);font-size:.9rem}.renovations-page .hero-buttons{flex-direction:column;gap:.5rem}.renovations-page .hero-buttons .btn{width:100%;padding:.65rem 1.5rem;font-size:.9rem}.renovations-page .featured-section{padding:var(--spacing-lg) var(--spacing-md)}.renovations-feature-card{max-width:100%}.renovations-page__grid{gap:var(--spacing-md);grid-template-columns:1fr}.renovations-page .contact-cta{margin:var(--spacing-lg) 0;padding:var(--spacing-lg) var(--spacing-md)}.renovations-page .contact-content{padding:var(--spacing-lg) 0}}@media (width<=480px){.renovations-page .hero{padding:var(--spacing-md) var(--spacing-md);margin-bottom:var(--spacing-md)}.renovations-page .hero-background{background:0 0!important}.renovations-page .hero-label{color:var(--color-white)}.renovations-page .hero-heading{font-size:clamp(1.25rem,5vw,2rem)}.renovations-page .hero-description{font-size:.85rem;line-height:1.5}.renovations-page .hero-buttons .btn{padding:.6rem 1.25rem;font-size:.8rem}.renovations-page .featured-section{padding:var(--spacing-md) var(--spacing-sm)}.renovations-page__grid{gap:var(--spacing-sm)}.renovations-page .contact-cta{padding:var(--spacing-md) var(--spacing-sm)}}.project-management-page{--pm-sage-hero:#8ea08f;--pm-sage-hero-to:#a1b2a2;--pm-sage:#7b8d7c;--pm-sage-dark:#627363;--pm-sage-soft:#eaf0eb;--pm-sage-tint:#f3f6f3;--pm-sage-border:#cbd7cc;--pm-charcoal:#222b26;--pm-text:#2c3531;--pm-muted:#5a6660;--pm-sand:#f9faf8;--pm-serif:"Playfair Display", Georgia, serif;--pm-sans:"Plus Jakarta Sans", "Segoe UI", sans-serif;--pm-ease:cubic-bezier(.16, 1, .3, 1);width:100%;min-height:100vh;color:var(--pm-text);font-family:var(--pm-sans);background:#fff}.project-management-page h1,.project-management-page h2,.project-management-page h3{font-family:var(--pm-serif)}.pm-hero-banner{color:#fff;text-align:center;background:#aab2a6;width:100%;padding:3rem 1.5rem;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000d}.pm-hero-content{max-width:56rem;margin:0 auto;position:relative}.pm-hero-title{letter-spacing:.03em;color:#fff;margin:0 0 1rem;font-size:clamp(2rem,5vw,3.75rem);font-weight:400;line-height:1.15}.pm-hero-rule{background:#fff9;width:3rem;height:2px;margin:0 auto 1.25rem}.pm-hero-subtitle{max-width:32rem;font-family:var(--pm-serif);letter-spacing:.02em;color:#fffffff2;margin:0 auto;font-size:clamp(1rem,2vw,1.25rem);font-style:italic;font-weight:400}.pm-intro-section{background:#fff;width:100%;padding:clamp(4rem,8vw,7rem) 1.5rem}.pm-intro-container{max-width:80rem;margin:0 auto}.pm-intro-content{flex-direction:column;gap:4rem;display:flex}.pm-heading-section{text-align:center;max-width:48rem;margin:0 auto}.pm-main-heading{letter-spacing:-.01em;color:var(--pm-charcoal);margin:0 0 .75rem;font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:400;line-height:1.25}.pm-tagline{font-family:var(--pm-serif);color:var(--pm-sage);margin:0;font-size:clamp(1rem,2vw,1.15rem);font-style:italic;font-weight:500}.pm-images-grid{grid-template-columns:repeat(3,1fr);gap:2.25rem;width:100%;display:grid}.pm-image-card{transition:box-shadow .35s var(--pm-ease), transform .35s var(--pm-ease);background:#fff;border:1px solid #cbd7cc99;border-radius:1rem;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px -10px #7b8d7c1f}.pm-image-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -15px #7b8d7c40}.pm-image-container{aspect-ratio:4/3;background:#f1f5f9;width:100%;position:relative;overflow:hidden}.pm-image{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--pm-ease);display:block}.pm-image-card:hover .pm-image{transform:scale(1.05)}.pm-image-badge{letter-spacing:.15em;text-transform:uppercase;color:var(--pm-charcoal);background:#fffffff2;border-radius:999px;padding:.35rem .8rem;font-size:.65rem;font-weight:700;position:absolute;top:1rem;right:1rem;box-shadow:0 1px 3px #0000001a}.pm-image-city{text-align:center;font-family:var(--pm-serif);color:var(--pm-charcoal);border-top:1px solid #cbd7cc66;margin:0;padding:1.25rem 1rem;font-size:1.1rem;font-weight:700;transition:color .25s}.pm-image-card:hover .pm-image-city{color:var(--pm-sage)}.pm-intro-paragraph{text-align:center;background:var(--pm-sage-tint);border:1px solid #cbd7ccb3;border-radius:1rem;max-width:56rem;margin:0 auto;padding:clamp(1.75rem,4vw,2.5rem);position:relative;overflow:hidden}.pm-intro-paragraph:before{content:"";background:var(--pm-sage);width:8px;height:100%;position:absolute;top:0;left:0}.pm-intro-paragraph p{color:var(--pm-text);margin:0;font-size:clamp(.9rem,1.4vw,1rem);line-height:1.8}.pm-advantages-section{background:var(--pm-sage-tint);border-top:1px solid #cbd7cc99;border-bottom:1px solid #cbd7cc99;width:100%;padding:clamp(4rem,8vw,7rem) 1.5rem}.pm-advantages-container{max-width:64rem;margin:0 auto}.pm-advantages-heading{text-align:center;letter-spacing:-.01em;max-width:48rem;color:var(--pm-charcoal);margin:0 auto;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:400;line-height:1.35}.pm-heading-rule{background:var(--pm-sage);width:3rem;height:2px;margin:1rem auto 4rem}.pm-advantages-list{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.pm-advantages-list li{text-align:center;transition:border-color .35s var(--pm-ease), box-shadow .35s var(--pm-ease);background:#fff;border:1px solid #cbd7ccb3;border-radius:1rem;flex-direction:column;align-items:center;gap:1rem;padding:1.75rem;display:flex;box-shadow:0 10px 30px -10px #7b8d7c1f}.pm-advantages-list li:before{content:none}.pm-advantages-list li:hover{border-color:var(--pm-sage);box-shadow:0 20px 40px -15px #7b8d7c40}.pm-adv-emoji{width:3rem;height:3rem;color:var(--pm-sage);background:var(--pm-sage-soft);transition:background .35s var(--pm-ease), color .35s var(--pm-ease);border-radius:.75rem;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.pm-advantages-list li:hover .pm-adv-emoji{background:var(--pm-sage);color:#fff}.pm-adv-text{font-family:var(--pm-serif);color:var(--pm-charcoal);font-size:1rem;font-weight:700;line-height:1.4}.pm-advantages-list li:nth-child(7){grid-column:2/3}.pm-cta-section{background:#fff;padding:5rem 1.5rem}.pm-cta-card{text-align:center;background:var(--pm-sand);border:1px solid #cbd7cccc;border-radius:1.5rem;max-width:48rem;margin:0 auto;padding:clamp(2rem,5vw,3rem);box-shadow:0 10px 30px -10px #7b8d7c1f}.pm-pricing-text{color:var(--pm-text);margin:0 0 2rem;font-size:clamp(.9rem,1.4vw,1rem);line-height:1.8}.pm-contact-link-wrapper{justify-content:center;display:flex}.pm-contact-link{background:var(--pm-sage);color:#fff;letter-spacing:.15em;text-transform:uppercase;border-radius:999px;padding:.9rem 2.25rem;font-size:.75rem;font-weight:700;text-decoration:none;transition:background .3s,box-shadow .3s;display:inline-block;box-shadow:0 4px 6px #0000001a}.pm-contact-link:hover{background:var(--pm-sage-dark);box-shadow:0 10px 20px #00000026}.pm-contact-link:focus-visible{outline-offset:2px;outline:3px solid #7b8d7c66}@media (width<=992px){.pm-images-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.pm-advantages-list{grid-template-columns:repeat(2,1fr)}.pm-advantages-list li:nth-child(7){grid-column:1/-1;justify-self:center;width:calc(50% - .75rem)}}@media (width<=640px){.pm-intro-content{gap:2.5rem}.pm-images-grid,.pm-advantages-list{grid-template-columns:1fr}.pm-advantages-list li:nth-child(7){width:100%}.pm-heading-rule{margin-bottom:2.5rem}.pm-contact-link{text-align:center;width:100%}}.pm-image-modal-overlay{z-index:10000;background-color:#000000e6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.pm-image-modal-content{justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.pm-modal-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:90vh}.pm-modal-close{color:#fff;cursor:pointer;z-index:10001;background:0 0;border:none;padding:10px;font-size:2rem;transition:opacity .2s;position:absolute;top:-40px;right:0}.pm-modal-close:hover{opacity:.7}.pm-modal-nav{color:#fff;cursor:pointer;z-index:10001;background:#fff3;border:none;border-radius:4px;padding:15px 20px;font-size:2rem;transition:background .2s;position:absolute;top:50%;transform:translateY(-50%)}.pm-modal-nav:hover{background:#ffffff4d}.pm-modal-prev{left:20px}.pm-modal-next{right:20px}.pm-modal-indicators{z-index:10001;gap:10px;display:flex;position:absolute;bottom:-40px;left:50%;transform:translate(-50%)}.pm-modal-indicator{cursor:pointer;background:#ffffff80;border-radius:50%;width:12px;height:12px;transition:background .2s}.pm-modal-indicator.active{background:#fff}.pm-modal-indicator:hover{background:#fffc}@media (width<=768px){.pm-modal-nav{padding:10px 15px;font-size:1.5rem}.pm-modal-prev{left:10px}.pm-modal-next{right:10px}.pm-modal-close{font-size:1.5rem;top:-30px}}:root{--PhoneInput-color--focus:#03b2cb;--PhoneInputInternationalIconPhone-opacity:.8;--PhoneInputInternationalIconGlobe-opacity:.65;--PhoneInputCountrySelect-marginRight:.35em;--PhoneInputCountrySelectArrow-width:.3em;--PhoneInputCountrySelectArrow-marginLeft:var(--PhoneInputCountrySelect-marginRight);--PhoneInputCountrySelectArrow-borderWidth:1px;--PhoneInputCountrySelectArrow-opacity:.45;--PhoneInputCountrySelectArrow-color:currentColor;--PhoneInputCountrySelectArrow-color--focus:var(--PhoneInput-color--focus);--PhoneInputCountrySelectArrow-transform:rotate(45deg);--PhoneInputCountryFlag-aspectRatio:1.5;--PhoneInputCountryFlag-height:1em;--PhoneInputCountryFlag-borderWidth:1px;--PhoneInputCountryFlag-borderColor:#00000080;--PhoneInputCountryFlag-borderColor--focus:var(--PhoneInput-color--focus);--PhoneInputCountryFlag-backgroundColor--loading:#0000001a}.PhoneInput{align-items:center;display:flex}.PhoneInputInput{flex:1;min-width:0}.PhoneInputCountryIcon{width:calc(var(--PhoneInputCountryFlag-height) * var(--PhoneInputCountryFlag-aspectRatio));height:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--square{width:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--border{background-color:var(--PhoneInputCountryFlag-backgroundColor--loading);box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor), inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor)}.PhoneInputCountryIconImg{width:100%;height:100%;display:block}.PhoneInputInternationalIconPhone{opacity:var(--PhoneInputInternationalIconPhone-opacity)}.PhoneInputInternationalIconGlobe{opacity:var(--PhoneInputInternationalIconGlobe-opacity)}.PhoneInputCountry{margin-right:var(--PhoneInputCountrySelect-marginRight);align-self:stretch;align-items:center;display:flex;position:relative}.PhoneInputCountrySelect{z-index:1;opacity:0;cursor:pointer;border:0;width:100%;height:100%;position:absolute;top:0;left:0}.PhoneInputCountrySelect[disabled],.PhoneInputCountrySelect[readonly]{cursor:default}.PhoneInputCountrySelectArrow{content:"";width:var(--PhoneInputCountrySelectArrow-width);height:var(--PhoneInputCountrySelectArrow-width);margin-left:var(--PhoneInputCountrySelectArrow-marginLeft);border-style:solid;border-color:var(--PhoneInputCountrySelectArrow-color);border-top-width:0;border-bottom-width:var(--PhoneInputCountrySelectArrow-borderWidth);border-left-width:0;border-right-width:var(--PhoneInputCountrySelectArrow-borderWidth);transform:var(--PhoneInputCountrySelectArrow-transform);opacity:var(--PhoneInputCountrySelectArrow-opacity);display:block}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon+.PhoneInputCountrySelectArrow{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon--border{box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus), inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon .PhoneInputInternationalIconGlobe{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.contact-page{background:var(--color-white,#fff);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex}.contact-hero{color:var(--color-white,#fff);padding:var(--spacing-section,8rem) var(--spacing-lg,2rem);text-align:center;background:linear-gradient(145deg,#aab2a6,#8a9287);flex-direction:column;align-items:center;display:flex}.contact-hero__content{text-align:center;max-width:900px;margin:0 auto}.contact-hero .eyebrow{letter-spacing:.15em;text-transform:uppercase;opacity:.9;margin-bottom:var(--spacing-sm,.75rem);font-size:.875rem;font-weight:500}.contact-hero h1{font-family:var(--font-heading);margin-bottom:var(--spacing-sm,.75rem);text-transform:uppercase;letter-spacing:-.02em;color:var(--color-white,#fff);font-size:clamp(2rem,6vw,3rem);font-weight:400;line-height:1.1}.contact-hero .subhead{opacity:.95;max-width:700px;margin:0 auto;font-size:1rem;font-weight:300;line-height:1.5}.contact-body{padding:var(--spacing-xl,3rem) var(--spacing-lg,2rem);flex:1}.contact-grid{gap:var(--spacing-xl,2.5rem);grid-template-columns:1fr 1fr;max-width:1200px;margin:0 auto;display:grid}.contact-card{background:var(--color-white,#fff);padding:var(--spacing-lg,2rem);border:1px solid #0000000f;border-radius:12px;box-shadow:0 4px 20px #00000014}.contact-card h2{margin-bottom:var(--spacing-md,1.25rem);color:var(--color-text,#333);font-size:1.5rem;font-weight:600}.info-item{margin-bottom:var(--spacing-md,1.25rem);padding-bottom:var(--spacing-sm,.75rem);border-bottom:1px solid #0000000f;flex-direction:column;display:flex}.info-item:last-child{border-bottom:none;margin-bottom:0}.info-item strong{color:#8a9287;text-transform:uppercase;letter-spacing:.03em;width:100%;margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.info-item p{color:var(--color-text,#666);word-break:break-word;width:100%;margin:0 0 4px;font-size:.875rem;line-height:1.6}.info-item a{color:#8a9287;border-bottom:1px solid #0000;font-weight:500;text-decoration:none;transition:all .3s;display:inline}.info-item a:hover{color:#6a7267;border-bottom-color:currentColor}.info-item .directions-link{align-items:center;gap:var(--spacing-xs,.5rem);margin-top:var(--spacing-xs,.5rem);color:#333;cursor:pointer;background:#f5f5f5;border:none;border-radius:6px;width:fit-content;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.info-item .directions-link:hover{color:#333;background:#e8e8e8;border-bottom-color:#0000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.contact-form-wrapper{background:var(--color-white,#fff);border:1px solid #0000000f;border-radius:12px;box-shadow:0 4px 20px #00000014}.contact-form{padding:var(--spacing-lg,2rem)}.contact-form h2{margin-bottom:var(--spacing-md,1rem);color:var(--color-text,#333);font-size:1.5rem;font-weight:600}.form-group{margin-bottom:var(--spacing-md,1.25rem)}.form-group label{margin-bottom:var(--spacing-xs,.5rem);color:var(--color-text,#333);font-size:.95rem;font-weight:500;display:block}.form-group input,.form-group textarea{border:1px solid #00000026;border-radius:8px;width:100%;padding:.875rem 1rem;font-family:inherit;font-size:.95rem;transition:all .3s}.form-group input:focus,.form-group textarea:focus{border-color:#aab2a6;outline:none;box-shadow:0 0 0 3px #aab2a61a}.form-group .PhoneInput{width:100%}.form-group .PhoneInputInput{border:1px solid #00000026;border-radius:8px;width:100%;padding:.875rem 1rem;font-family:inherit;font-size:.95rem;transition:all .3s}.form-group .PhoneInputInput:focus{border-color:#aab2a6;outline:none;box-shadow:0 0 0 3px #aab2a61a}.form-group .PhoneInputCountrySelect:focus{outline-color:#aab2a6}.form-group .PhoneInputCountryIcon{border:1px solid #00000026}.form-group .PhoneInputCountrySelectArrow{color:#aab2a6}.form-group textarea{resize:vertical;min-height:140px}.submit-btn{color:#333;cursor:pointer;background:#f5f5f5;border:none;border-radius:8px;width:100%;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s}.submit-btn:hover:not(:disabled){color:#333;background:#e8e8e8;transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.status-message{margin-top:var(--spacing-md,1rem);text-align:center;border-radius:8px;padding:.875rem 1rem;font-size:.95rem;font-weight:500}.status-message.success{color:#20603d;background:#e8f7ed;border:1px solid #c6ebd1}.status-message.error{color:#9b1c1c;background:#fde8e8;border:1px solid #facdcd}@media (width<=900px){.contact-grid{grid-template-columns:1fr}}@media (width<=768px){.contact-hero{padding:var(--spacing-md,1.5rem) var(--spacing-md,1.5rem)}.contact-body{padding:var(--spacing-lg,2rem) var(--spacing-md,1.5rem)}.contact-card,.contact-form{padding:var(--spacing-md,1.5rem)}}@media (width<=480px){.contact-hero{padding:var(--spacing-md,1rem) var(--spacing-sm,1rem)}.contact-body{padding:var(--spacing-md,1.5rem) var(--spacing-sm,1rem)}}.error-page{box-sizing:border-box;background:var(--color-white,#fff);text-align:center;justify-content:center;align-items:center;width:100%;min-height:400px;margin:0;padding:2.5% 5%;display:flex;position:relative}.error-page-content{text-align:center;z-index:1;width:100%;max-width:600px;padding:2.5% 1.5%;position:relative}.error-icon{color:var(--color-secondary,#aab2a6);opacity:1;margin-bottom:1.5%;font-size:120px;font-weight:700;line-height:1;display:block}.error-page h1{color:var(--color-primary,#4c4d4f);margin:0 0 1%;font-size:32px;font-weight:600}.error-message{color:var(--color-text,#333);margin:0 0 .75%;font-size:18px;font-weight:500}.error-description{color:var(--color-text-muted,#6b7280);margin:0 0 2%;font-size:16px;line-height:1.6}.error-button{background:var(--color-secondary,#aab2a6);color:var(--color-white,#fff);border-radius:6px;padding:12px 24px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.error-button:hover{background:var(--color-secondary,#aab2a6);filter:brightness(.85);color:var(--color-white,#fff)}.error-button:active{background:var(--color-secondary,#aab2a6);filter:brightness(.75)}@media (width<=768px){.error-page{min-height:calc(100vh - 150px);padding:1% 4%}.error-page-content{padding:2% 3%}.error-icon{margin-bottom:2.5%;font-size:80px}.error-page h1{margin-bottom:1.5%;font-size:24px}.error-message{margin-bottom:1.25%;font-size:16px}.error-description{margin-bottom:3%;font-size:14px}.error-button{width:100%;max-width:280px;padding:10px 20px;font-size:14px}}@media (width<=480px){.error-page{padding:1% 3%}.error-page-content{padding:2% 2.5%}.error-icon{margin-bottom:2%;font-size:64px}.error-page h1{margin-bottom:1.25%;font-size:20px}.error-message{margin-bottom:1%;font-size:15px}.error-description{margin-bottom:2.5%;font-size:13px}}.error-content{text-align:center;width:100%;max-width:600px;padding:40px 20px}.error-content h1{color:var(--color-primary,#4c4d4f);margin-bottom:16px;font-size:36px}.error-content p{color:var(--color-text,#333);margin-bottom:12px;font-size:18px}.error-hint{color:var(--color-text-muted,#6b7280);margin-bottom:24px;font-size:14px}.error-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.error-actions .btn-primary{background:var(--color-secondary,#aab2a6);color:var(--color-white,#fff);border-radius:6px;padding:12px 24px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.error-actions .btn-primary:hover{background:var(--color-secondary,#aab2a6);filter:brightness(.85)}.error-actions .btn-secondary{background:var(--color-light,#e6e7e8);color:var(--color-text,#333);border-radius:6px;padding:12px 24px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.error-actions .btn-secondary:hover{background:var(--color-light,#e6e7e8);filter:brightness(.9)}@media (width<=480px){.error-actions{flex-direction:column;align-items:center}.error-actions .btn-primary,.error-actions .btn-secondary{width:100%;max-width:280px}}.page.users-page{box-sizing:border-box;width:95%;max-width:1600px;margin:0 auto;padding:24px 24px 10%}.page.users-page .page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:8px;display:flex}.page.users-page .page-header h1{white-space:nowrap;margin:0}.header-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.filter-container{flex-shrink:0;align-items:center;gap:8px;display:flex}.filter-container label{color:#333;white-space:nowrap;font-weight:600}.status-filter-select{cursor:pointer;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;padding:8px 12px;font-size:.95rem;transition:all .2s}.status-filter-select:hover{border-color:#007bff}.status-filter-select:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.page.users-page .page-header button{color:#fff;cursor:pointer;white-space:nowrap;background-color:#1f2937;border:none;border-radius:6px;padding:8px 14px}.page.users-page .page-header button:hover{background-color:#111827}.error{color:#b91c1c;margin-top:12px}.users-table-wrapper{-webkit-overflow-scrolling:touch;width:100%;margin-top:16px;overflow-x:auto}.users-table{border-collapse:collapse;background-color:#fff;border-radius:8px;width:100%;min-width:700px}.users-table th,.users-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e7eb;padding:12px;font-size:.9rem}.users-table th{background-color:#f9fafb;font-weight:600}.users-table tr:last-child td{border-bottom:none}.btn-edit{cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:.9rem;transition:background-color .2s;color:#fff!important;background-color:#aab2a6!important}.btn-edit:hover{background-color:#8a9287!important}.status-badge{text-transform:uppercase;border-radius:12px;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-block}.status-active{color:#155724;background-color:#d4edda}.status-inactive{color:#856404;background-color:#fff3cd}.status-deactivated{color:#721c24;background-color:#f8d7da}.btn-manage-status{color:#fff;cursor:pointer;background-color:#6c757d;border:none;border-radius:4px;margin-left:8px;padding:6px 12px;font-size:.9rem;transition:background-color .2s}.btn-manage-status:hover{background-color:#5a6268}.modal-backdrop{z-index:1000;background-color:#00000073;justify-content:center;align-items:center;padding:8px;display:flex;position:fixed;inset:0;overflow:hidden}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:8px;display:flex;position:fixed;inset:0;overflow:hidden}.modal{background-color:#fff;border-radius:10px;width:560px;max-width:95%;max-height:80vh;padding:16px;overflow-y:auto;box-shadow:0 16px 32px #00000038}.modal-content{background-color:#fff;border-radius:10px;width:440px;max-width:95%;max-height:80vh;overflow-y:auto;box-shadow:0 16px 32px #00000038}.modal-header{background-color:#f8fafc;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:1.5rem;transition:background-color .2s;display:flex}.modal-close:hover{color:#111827;background-color:#f3f4f6}.modal-body{padding:16px}.modal h2{margin-top:0;margin-bottom:12px}.modal p{color:#374151;margin-bottom:12px}.modal-form .form-row{flex-wrap:wrap;gap:16px;margin-bottom:14px;display:flex}.modal-form label{color:#374151;flex-direction:column;flex:1;min-width:220px;font-size:.85rem;display:flex}.modal-form label .label-row{align-items:center;gap:6px;display:flex}.modal-form label .required{color:#e11d48;font-size:1rem;font-weight:600;line-height:1}.modal-form input,.modal-form select{border:1px solid #d1d5db;border-radius:6px;margin-top:6px;padding:8px 10px;font-size:.9rem}.modal-form input:focus,.modal-form select:focus{border-color:#aab2a6;outline:none}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.modal-actions button{cursor:pointer;border:none;border-radius:6px;padding:8px 14px;font-size:.85rem}.modal-actions button[type=submit],.modal-actions button:not([type]){color:#fff!important;background-color:#aab2a6!important;background-image:none!important}.modal-actions button[type=submit]:hover,.modal-actions button:not([type]):hover{background-color:#8a9287!important;background-image:none!important}.modal-actions button[type=button]{color:#1f2937!important;background-color:#e5e7eb!important}.modal-actions button[type=button]:hover{background-color:#d1d5db!important}.users-page .modal-actions .btn-cancel{background-color:var(--button-secondary-bg,#e5e7eb);color:var(--button-secondary-fg,#111827);background-image:none}.users-page .modal-actions .btn-cancel:hover{background-color:var(--button-secondary-hover-bg,#d1d5db);background-image:none}.modal-actions button.btn-cancel{background-color:var(--button-secondary-bg,#e5e7eb);color:var(--button-secondary-fg,#111827);background-image:none}.modal-actions button.btn-cancel:hover{background-color:var(--button-secondary-hover-bg,#d1d5db);background-image:none}.modal-actions button:disabled{opacity:.6;cursor:not-allowed}.modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:10px;padding:12px 16px;display:flex}.btn-secondary{color:#fff;cursor:pointer;background-color:#6c757d;border:none;border-radius:6px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:background-color .2s}.btn-secondary:hover{background-color:#5a6268}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-primary{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:background-color .2s;color:#fff!important;background-color:#aab2a6!important}.btn-primary:hover{background-color:#8a9287!important}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.invite-link-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.invite-link-row input{border:1px solid #d1d5db;border-radius:6px;flex:1;min-width:220px;padding:8px 10px;font-size:.85rem}.invite-link-row button{color:#fff;cursor:pointer;background-color:#16a34a;border:none;border-radius:6px;padding:8px 12px;font-size:.85rem}.invite-link-row button:hover{background-color:#15803d}.copy-status{color:#15803d;margin-top:8px;font-size:.8rem}.modal.error h2{color:#b91c1c}.modal.error p{color:#7f1d1d}.owner-edit-modal{max-width:700px}.user-info-section{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:20px;padding:16px}.user-info-section h3{color:#374151;margin-top:0;margin-bottom:12px;font-size:.95rem;font-weight:600}.info-grid{flex-direction:column;gap:10px;display:flex}.info-item{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.info-item:last-child{border-bottom:none}.info-label{color:#374151;font-size:.9rem;font-weight:600}.info-value{color:#6b7280;text-align:right;font-size:.9rem}.info-value.role-badge{text-transform:uppercase;color:#333;background-color:gold;border-radius:12px;padding:4px 12px;font-size:.8rem;font-weight:500}.status-modal{border-radius:10px!important;width:400px!important;max-width:95%!important;padding:0!important}.status-modal .modal-header{background:#fff;padding:10px 14px}.status-modal .modal-header h2{color:#000}.status-modal .modal-body{padding:14px}.status-modal .modal-footer{padding:10px 14px}.status-modal .btn-primary{font-weight:600;color:#fff!important;opacity:1!important;background-color:#aab2a6!important;background-image:none!important}.status-modal .btn-primary:hover{background-color:#8a9287!important;background-image:none!important}.status-modal .btn-primary:disabled{color:#fff!important;opacity:.85!important;background-color:#aab2a6!important;background-image:none!important}.user-status-info{background-color:#f8f9fa;border-radius:8px;margin-bottom:16px;padding:12px}.user-status-info p{margin:4px 0}.action-selection{margin-top:12px}.action-selection label{color:#333;margin-bottom:10px;font-size:1rem;font-weight:600;display:block}.action-buttons{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.action-btn{cursor:pointer;text-align:left;background-color:#fff;border:2px solid #dee2e6;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .3s;display:flex;position:relative}.action-btn:after{content:"";border:2px solid #dee2e6;border-radius:50%;width:20px;height:20px;transition:all .3s}.action-btn:hover{background-color:#f8f9fa;border-color:#007bff;transform:translate(4px)}.action-btn.selected{color:#004085;background-color:#e7f3ff;border-color:#007bff}.action-btn.selected:after{background-color:#007bff;border-color:#007bff;box-shadow:inset 0 0 0 4px #fff}.action-btn.danger{border-color:#f8d7da}.action-btn.danger:hover{background-color:#fff5f5;border-color:#dc3545}.action-btn.danger.selected{color:#721c24;background-color:#ffe6e6;border-color:#dc3545}.action-btn.danger.selected:after{background-color:#dc3545;border-color:#dc3545}.action-btn.success{border-color:#d4edda}.action-btn.success:hover{background-color:#f0fff4;border-color:#28a745}.action-btn.success.selected{color:#155724;background-color:#e6ffe6;border-color:#28a745}.action-btn.success.selected:after{background-color:#28a745;border-color:#28a745}.action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.action-description{background-color:#e7f3ff;border-left:4px solid #007bff;border-radius:6px;margin-top:16px;padding:16px 20px;animation:.3s slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.action-description p{color:#004085;margin:0;font-size:.95rem;line-height:1.6}.error-text{color:#dc3545;text-align:center;padding:16px;font-weight:500}@media (width<=1200px){.page.users-page{width:98%;padding:20px}}@media (width<=900px){.page.users-page{width:100%;padding:16px}.page.users-page .page-header{flex-direction:column;align-items:flex-start;gap:10px}.header-actions{justify-content:space-between;width:100%}.filter-container{flex:1}}@media (width<=520px){.page.users-page .page-header{justify-content:flex-start}.page.users-page .page-header button{width:auto}.users-table{display:block;overflow-x:auto}.modal{padding:16px}.modal-form label{min-width:100%}.modal-actions{justify-content:stretch}.modal-actions button,.modal-footer button{width:100%}.modal-footer{flex-direction:column}.invite-link-row input,.invite-link-row button{width:100%}.info-item{flex-direction:column;align-items:flex-start;gap:4px}.info-value{text-align:left}}.idle-modal .modal-secondary.btn-cancel{color:#fff!important;background-color:#aab2a6!important;border:1px solid #0000!important}.idle-modal .modal-secondary.btn-cancel:hover{background-color:#8a9287!important}.owner-dashboard{max-width:100%;min-height:100vh;margin:0 auto;padding:3%;font-family:Arial,sans-serif}@media (width>=1600px){.owner-dashboard{max-width:1600px;padding:2% 5%}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:2%}}@media (width>=1200px) and (width<=1599px){.owner-dashboard{max-width:1400px;padding:2.5% 4%}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2%}}@media (width>=900px) and (width<=1199px){.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2.5%}.dashboard-card{min-height:160px;padding:5% 3%}}@media (width>=600px) and (width<=899px){.owner-dashboard{padding:3% 2%}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:3%}.dashboard-card{min-height:170px;padding:6% 4%}.schedule-section{padding:5%}}@media (width<=599px){.owner-dashboard{padding:4% 3%}.dashboard-title{margin-bottom:6%}.dashboard-grid{grid-template-columns:1fr;gap:4%;margin-bottom:6%}.dashboard-card{min-height:160px;padding:8% 5%}.card-icon{margin-bottom:5%}.dashboard-card h3{margin-bottom:6%}.card-button{min-width:70%;padding:3.5% 8%}.schedule-section{margin:0;padding:6%}.schedule-section h2{margin-bottom:5%}.schedule-item{margin-bottom:3%;padding:4%;font-size:.9rem}.see-more-button{width:80%;max-width:200px;padding:3.5% 8%}}@media (width<=400px){.owner-dashboard{padding:5% 2%}.dashboard-card{padding:10% 6%}.schedule-item{padding:5%;font-size:.85rem}.card-button,.see-more-button{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.dashboard-card,.card-button,.see-more-button{transition:none}.dashboard-card:hover{transform:none}}@media print{.owner-dashboard{padding:2%}.dashboard-card,.schedule-section{box-shadow:none;break-inside:avoid}.card-button,.see-more-button{display:none}}.project-metadata{background-color:var(--color-light);min-height:100vh}.metadata-hero{color:#fff;padding:4rem 5%;position:relative;overflow:hidden}.hero-content{z-index:2;max-width:90%;margin:0 auto;position:relative}.project-title{text-shadow:2px 2px 4px #0000004d;margin-bottom:1rem;font-size:3rem;font-weight:700}.status-badge{text-transform:uppercase;backdrop-filter:blur(10px);background-color:#fff3;border-radius:20px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;display:inline-block}.status-in-progress{background-color:#3498dbe6}.status-completed{background-color:#2ecc71e6}.status-planned{background-color:#9b59b6e6}.status-delayed{background-color:#e74c3ce6}.status-cancelled{background-color:#95a5a6e6}.hero-image{z-index:1;width:50%;height:100%;position:absolute;top:0;right:0}.hero-image img{object-fit:contain;width:100%;height:100%}.metadata-content{max-width:90%;margin:0 auto;padding:2rem 0}.lot-selector-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.lot-card{background:var(--color-white);border:1px solid #e6e6e6;border-radius:8px;flex-direction:column;justify-content:space-between;padding:1rem;display:flex;box-shadow:0 2px 8px #0000000f}.lot-card h3{color:var(--color-text);margin:0 0 .5rem}.lot-card p{color:var(--color-text-muted);margin:0 0 .75rem}.btn-primary{background-color:var(--color-primary);color:var(--color-white);cursor:pointer;border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:background .3s}.btn-secondary{color:var(--color-primary);border:1px solid var(--color-primary);cursor:pointer;background:0 0;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .3s}.btn-primary:hover,.btn-secondary:hover{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary);filter:brightness(.9)}.btn-primary:focus,.btn-secondary:focus{outline:3px solid #2c7be52e}.no-results{text-align:center;padding:2rem}.metadata-section{background:var(--color-white);border-radius:8px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 4px #0000001a}.metadata-section h2{border-bottom:3px solid;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.8rem}.schedule-button-container{text-align:center;margin-top:20px}.metadata-grid{grid-template-columns:repeat(auto-fit,minmax(20%,1fr));gap:1.5rem;display:grid}.metadata-item{flex-direction:column;gap:.5rem;display:flex}.metadata-item.full-width{grid-column:1/-1}.metadata-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.9rem;font-weight:600}.metadata-value{color:var(--color-text);font-size:1.1rem;font-weight:500}.progress-fill{color:#fff;justify-content:center;align-items:center;height:100%;font-weight:700;transition:width .5s;display:flex}.project-description{border-top:1px solid #e0e0e0;margin-top:1.5rem;padding-top:1.5rem}.project-description p{color:#555;font-size:1.05rem;line-height:1.8}.team-grid{grid-template-columns:repeat(auto-fit,minmax(25%,1fr));gap:1.5rem;display:grid}.team-member{background-color:#fafafa;border:2px solid;border-radius:8px;padding:1.5rem}.team-member h3{color:#333;margin-bottom:1rem;font-size:1.2rem}.member-name{color:#222;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.member-contact{color:#666;margin-bottom:.25rem;font-size:.95rem}.buyer-info{text-align:center;border-radius:8px;padding:1.5rem}.buyer-name{color:#333;font-size:1.3rem;font-weight:600}.button-container{justify-content:center;gap:1rem;max-width:90%;margin:0 auto;padding:2rem 0 4rem;display:flex}.back-button{color:#fff;cursor:pointer;text-transform:uppercase;border:none;border-radius:5px;padding:.75rem 1.5rem;font-size:1.1rem;font-weight:600;transition:background-color .3s}.project-metadata-back{background-color:var(--color-primary);color:var(--color-white);cursor:pointer;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:500;text-decoration:none;transition:background-color .3s}.project-metadata-back:hover{background-color:var(--color-primary);color:var(--color-white);filter:brightness(.9)}.project-metadata-schedule{background-color:var(--color-primary);color:var(--color-white);cursor:pointer;border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:500;text-decoration:none;transition:background-color .3s}.project-metadata-schedule:hover{background-color:var(--color-primary);color:var(--color-white);filter:brightness(.9)}.view-files-link{color:inherit;text-decoration:none}.metadata-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;display:flex}.spinner{border:4px solid #f3f3f3;border-top:4px solid var(--color-accent);border-radius:50%;width:3.5rem;height:3.5rem;animation:1s linear infinite spin}.metadata-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.metadata-error h2{color:var(--color-primary);margin-bottom:1rem}.metadata-error p{color:var(--color-text-muted);font-size:1.1rem}@media (width<=768px){.project-title{font-size:2rem}.hero-image{display:none}.metadata-content{padding:1rem}.metadata-grid,.team-grid,.lot-selector-list{grid-template-columns:1fr}}.project-metadata .lots-grid{justify-content:stretch;gap:2.5rem;margin-top:1rem;display:grid;grid-template-columns:repeat(4,1fr)!important}.lot-card{background:var(--color-white);cursor:pointer;border:1px solid;border-radius:8px;padding:1rem;transition:transform .2s,box-shadow .2s;box-shadow:0 1px 3px #00000014}.lot-card h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.lot-address{color:var(--color-text-muted);margin:.5rem 0;font-size:.9rem}.lot-status{text-transform:uppercase;border-radius:2px;padding:.03125rem .0625rem;font-size:.5rem;font-weight:500;line-height:1;display:inline-block}.status-available{color:#2e7d32;background-color:#e8f5e8}.status-reserved{color:#f57c00;background-color:#fff3e0}.lot-status-inline{align-items:center;gap:.5rem;display:inline-flex}.status-dot{border:1px solid #00000014;border-radius:50%;width:12px;height:12px;display:inline-block}.status-label{color:var(--color-text);text-transform:none;font-size:.9rem;font-weight:600}.status-dot.status-available{background-color:#4ade80}.status-dot.status-reserved{background-color:#fbbf24}.status-dot.status-sold{background-color:#f87171}.lot-card .lot-status-inline,.lot-card .status-label{background:0 0!important;padding:0!important}.lot-card .status-dot.status-available{background-color:#4ade80!important}.lot-card .status-dot.status-reserved{background-color:#fbbf24!important}.lot-card .status-dot.status-sold{background-color:#f87171!important}@media (width<=768px){.lots-grid{grid-template-columns:1fr}}@media (width<=1000px){.project-metadata .lots-grid{grid-template-columns:repeat(2,1fr)!important}}@media (width<=600px){.project-metadata .lots-grid{grid-template-columns:1fr!important}}.progress-bar{background-color:var(--color-light);border-radius:12px;width:100%;height:24px;position:relative;overflow:hidden}.progress-fill{border-radius:12px;height:100%;transition:width .3s}.progress-text{color:var(--color-text);z-index:1;font-size:.9rem;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width<=600px){.project-metadata .status-badge,.project-metadata .lot-status-inline{display:none!important}}.customer-dashboard{max-width:100%;min-height:100vh;margin:0 auto;padding:3%;font-family:Arial,sans-serif}@media (width>=1600px){.customer-dashboard{max-width:1600px;padding:2% 5%}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:2%}}@media (width>=1200px) and (width<=1599px){.customer-dashboard{max-width:1400px;padding:2.5% 4%}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2%}}@media (width>=900px) and (width<=1199px){.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2.5%}.dashboard-card{min-height:160px;padding:5% 3%}}@media (width>=600px) and (width<=899px){.customer-dashboard{padding:3% 2%}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:3%}.dashboard-card{min-height:170px;padding:6% 4%}.schedule-section{padding:5%}}@media (width<=599px){.customer-dashboard{padding:4% 3%}.dashboard-title{margin-bottom:6%}.dashboard-grid{grid-template-columns:1fr;gap:4%;margin-bottom:6%}.dashboard-card{min-height:160px;padding:8% 5%}.card-icon{margin-bottom:5%}.dashboard-card h3{margin-bottom:6%}.card-button{min-width:70%;padding:3.5% 8%}.schedule-section{margin:0;padding:6%}.schedule-section h2{margin-bottom:5%}.schedule-item{margin-bottom:3%;padding:4%;font-size:.9rem}.see-more-button{width:80%;max-width:200px;padding:3.5% 8%}}@media (width<=400px){.customer-dashboard{padding:5% 2%}.dashboard-card{padding:10% 6%}.schedule-item{padding:5%;font-size:.85rem}.card-button,.see-more-button{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.dashboard-card,.card-button,.see-more-button{transition:none}.dashboard-card:hover{transform:none}}@media print{.customer-dashboard{padding:2%}.dashboard-card,.schedule-section{box-shadow:none;break-inside:avoid}.card-button,.see-more-button{display:none}}.salesperson-dashboard{max-width:100%;min-height:100vh;margin:0 auto;padding:3%;font-family:Arial,sans-serif}@media (width>=1200px){.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:2%}}@media (width>=1600px){.salesperson-dashboard{max-width:1600px;padding:2% 5%}}@media (width>=900px) and (width<=1199px){.salesperson-dashboard{max-width:1400px;padding:2.5% 4%}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2.5%}.dashboard-card{min-height:160px;padding:5% 3%}}@media (width>=600px) and (width<=899px){.salesperson-dashboard{padding:3% 2%}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:3%}.dashboard-card{min-height:170px;padding:6% 4%}.schedule-section{padding:5%}}@media (width<=599px){.salesperson-dashboard{padding:4% 3%}.dashboard-title{margin-bottom:6%}.dashboard-grid{grid-template-columns:1fr;gap:4%;margin-bottom:6%}.dashboard-card{min-height:160px;padding:8% 5%}.card-icon{margin-bottom:5%}.dashboard-card h3{margin-bottom:6%}.card-button{min-width:70%;padding:3.5% 8%}.schedule-section{margin:0;padding:6%}.schedule-section h2{margin-bottom:5%}.schedule-item{margin-bottom:3%;padding:4%;font-size:.9rem}.see-more-button{width:80%;max-width:200px;padding:3.5% 8%}}@media (width<=400px){.salesperson-dashboard{padding:5% 2%}.dashboard-card{padding:10% 6%}.schedule-item{padding:5%;font-size:.85rem}.card-button,.see-more-button{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.dashboard-card,.card-button,.see-more-button{transition:none}.dashboard-card:hover{transform:none}}@media print{.salesperson-dashboard{padding:2%}.dashboard-card,.schedule-section{box-shadow:none;break-inside:avoid}.card-button,.see-more-button{display:none}}.projects-page .portfolio-section .container{box-sizing:border-box;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.projects-page .portfolio-section .portfolio-grid{grid-template-columns:repeat(2,minmax(360px,1fr));justify-content:center;justify-items:center;gap:calc(var(--spacing-lg) * 2.5)!important;column-gap:calc(var(--spacing-lg) * 2.5)!important;row-gap:calc(var(--spacing-lg) * 2)!important}.projects-page .project-item{justify-content:center;width:100%;max-width:100%;display:flex;box-shadow:none!important;border:none!important;outline:none!important}.projects-page .residential-project-card{flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:100%;display:flex}.projects-page .residential-project-city{text-align:center;color:#aab2a6;letter-spacing:.06em;margin:0;font-size:.95rem;font-weight:400}.projects-page .portfolio-card,.projects-page .project-hover-card{box-sizing:border-box;aspect-ratio:1;width:100%;max-width:100%;height:auto;box-shadow:none;background:linear-gradient(#f2f2f2 0%,#e5e5e5 100%);padding:0;overflow:hidden;border:none!important;outline:none!important}.projects-page .portfolio-card:hover,.projects-page .portfolio-card:focus,.projects-page .portfolio-card:focus-visible,.projects-page .portfolio-card:focus-within,.projects-page .project-hover-card:hover,.projects-page .project-hover-card:focus,.projects-page .project-hover-card:focus-visible,.projects-page .project-hover-card:focus-within{border:none!important;outline:none!important}.projects-page .portfolio-card:hover,.projects-page .project-hover-card:hover{box-shadow:0 20px 60px #0003}.projects-page .portfolio-card .card-image-bg,.projects-page .portfolio-card .card-overlay,.projects-page .portfolio-card .card-content{border:none!important;outline:none!important}.projects-page .portfolio-card .card-image-bg{object-fit:cover;object-position:center center;transform-origin:50%;width:100%;height:100%;display:block}.projects-page .project-hover-content{box-sizing:border-box;justify-content:center;padding:1rem;overflow:hidden}.projects-page .project-hover-content .card-title{flex-shrink:0;margin-bottom:.75rem}.projects-page .project-hover-content .admin-project-actions{flex-shrink:0;gap:.5rem;margin-top:1rem}.projects-page .project-hover-content .admin-project-button,.projects-page .project-hover-content .admin-edit-button,.projects-page .project-hover-content .admin-lots-button,.projects-page .project-hover-content .archive-button{margin:.2rem 0}.contractor-dashboard{max-width:100%;min-height:100vh;margin:0 auto;padding:3%;font-family:Arial,sans-serif}.dashboard-title{text-align:center;color:#333;margin-bottom:3%;padding:0 2%;font-size:clamp(1.5rem,4vw,2rem)}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:2.5%;margin-bottom:4%;padding:0 1%;display:grid}.dashboard-card{text-align:center;background:#e8ebe7;border-radius:.75rem;flex-direction:column;justify-content:space-between;align-items:center;min-height:180px;padding:6% 4%;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 .25rem .375rem #0000001a}.dashboard-card:hover{transform:translateY(-.3125rem);box-shadow:0 .5rem .75rem #00000026}.card-icon{margin-bottom:4%;font-size:clamp(2rem,6vw,3rem)}.dashboard-card h3{color:#333;margin-bottom:5%;padding:0 2%;font-size:clamp(.9rem,2.5vw,1.125rem);line-height:1.4}.card-button{color:#fff;cursor:pointer;white-space:nowrap;background-color:#aab2a6;border:none;border-radius:1.25rem;min-width:60%;padding:2.5% 6%;font-size:clamp(.8rem,2vw,.875rem);font-weight:500;transition:background-color .3s,transform .2s}.card-button:hover{background-color:#8a9287;transform:scale(1.05)}.card-button:active{transform:scale(.98)}.schedule-section{background:#e8ebe7;border-radius:.75rem;margin:0 1%;padding:4%;box-shadow:0 .25rem .375rem #0000001a}.schedule-section h2{color:#333;margin-bottom:3%;font-size:clamp(1.2rem,3.5vw,1.5rem)}.schedule-list{margin-bottom:3%}.schedule-item{color:#333;word-wrap:break-word;background-color:#eef0ed;border-radius:.5rem;margin-bottom:2%;padding:3%;font-size:clamp(.85rem,2.2vw,1rem);line-height:1.6}.schedule-date{font-weight:500}.schedule-task{color:#6a7a67;font-weight:600}.schedule-lot{color:#555;font-style:italic}.schedule-separator{margin:0 .2em}.see-more-button{color:#fff;cursor:pointer;background-color:#aab2a6;border:none;border-radius:1.25rem;min-width:120px;margin:0 auto;padding:2% 5%;font-size:clamp(.8rem,2vw,.875rem);font-weight:500;transition:background-color .3s,transform .2s;display:block}.see-more-button:hover{background-color:#8a9287;transform:scale(1.05)}.see-more-button:active{transform:scale(.98)}.error{color:#d32f2f;text-align:center;padding:2%;font-size:clamp(.9rem,2.2vw,1rem);font-weight:500}.schedule-loading,.schedule-empty{text-align:center;color:#666;padding:3%;font-size:clamp(.9rem,2.2vw,1rem)}@media (width>=1600px){.contractor-dashboard{max-width:1600px;padding:2% 5%}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:2%}}@media (width>=1200px) and (width<=1599px){.contractor-dashboard{max-width:1400px;padding:2.5% 4%}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2%}}@media (width>=900px) and (width<=1199px){.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2.5%}.dashboard-card{min-height:160px;padding:5% 3%}}@media (width>=600px) and (width<=899px){.contractor-dashboard{padding:3% 2%}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:3%}.dashboard-card{min-height:170px;padding:6% 4%}.schedule-section{padding:5%}}@media (width<=599px){.contractor-dashboard{padding:4% 3%}.dashboard-title{margin-bottom:6%}.dashboard-grid{grid-template-columns:1fr;gap:4%;margin-bottom:6%}.dashboard-card{min-height:160px;padding:8% 5%}.card-icon{margin-bottom:5%}.dashboard-card h3{margin-bottom:6%}.card-button{min-width:70%;padding:3.5% 8%}.schedule-section{margin:0;padding:6%}.schedule-section h2{margin-bottom:5%}.schedule-item{margin-bottom:3%;padding:4%;font-size:.9rem}.see-more-button{width:80%;max-width:200px;padding:3.5% 8%}}@media (width<=400px){.contractor-dashboard{padding:5% 2%}.dashboard-card{padding:10% 6%}.schedule-item{padding:5%;font-size:.85rem}.card-button,.see-more-button{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.dashboard-card,.card-button,.see-more-button{transition:none}.dashboard-card:hover{transform:none}}@media print{.contractor-dashboard{padding:2%}.dashboard-card,.schedule-section{box-shadow:none;break-inside:avoid}.card-button,.see-more-button{display:none}}.lot-documents-page{background:var(--color-white,#fff);width:100%;min-height:100vh;overflow-x:hidden}.ldp-content{max-width:1400px;margin:0 auto;padding:2rem}.ldp-back-link{color:#ffffffd9;letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.85rem;text-decoration:none;transition:color .2s;display:inline-flex}.ldp-back-link:hover{color:#fff}.ldp-hero .projects-subtitle{opacity:.9;margin-top:.25rem;font-size:.95rem}.documents-toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.search-bar{flex:1;min-width:250px;max-width:400px;position:relative}.search-icon{color:#999;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search-input{border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem 1rem .75rem 2.5rem;font-size:1rem}.search-input:focus{border-color:#1976d2;outline:none}.filter-tabs{gap:.75rem;display:flex}.tab-button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.tab-button:hover{background:#f5f5f5}.tab-button.active{color:#fff;background:#1976d2;border-color:#1976d2}.upload-button{white-space:nowrap;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:flex}.documents-container{min-height:300px}.documents-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.documents-list{flex-direction:column;gap:1rem;display:flex}.document-card{background:#fff;border-radius:8px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 2px 8px #0000001a}.document-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.photo-preview{background:#f5f5f5;width:100%;height:200px;overflow:hidden}.photo-preview img{object-fit:cover;width:100%;height:100%}.document-info{padding:1rem}.document-name{color:#333;text-overflow:ellipsis;white-space:nowrap;margin:0 0 .5rem;font-weight:600;overflow:hidden}.document-meta{color:#666;margin:0;font-size:.85rem}.document-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.5rem;min-height:3rem;padding:.5rem 1rem 1rem;display:flex}.document-row{background:#fff;border-radius:8px;grid-template-columns:2.75rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.5rem;transition:box-shadow .2s;display:grid;box-shadow:0 1px 4px #0000001a}.document-row:hover{box-shadow:0 2px 8px #00000026}.document-icon{color:#666;justify-content:center;align-items:center;width:2.75rem;min-width:2.75rem;font-size:2rem;display:flex}.document-details{width:100%;min-width:0;overflow:hidden}.document-row .document-actions{flex-wrap:nowrap;min-width:max-content;padding:0}.document-row .document-name{min-width:0;max-width:100%;margin:0 0 .25rem;font-size:1rem;display:block}.document-row .document-meta{margin:0}.btn{cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:#1565c0}.lot-forms-section{background:#fafafa;border:1px solid #e5e5e5;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.lot-forms-header h2{color:#333;margin:0 0 .25rem;font-size:1.4rem}.lot-forms-header p{color:#666;margin:0 0 1rem}.lot-forms-loading,.lot-forms-error,.lot-forms-empty{color:#666;padding:.5rem 0}.lot-form-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.lot-form-info h3{color:#333;text-transform:capitalize;margin:0 0 .25rem;font-size:1.1rem}.lot-form-meta{color:#666;flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.lot-form-download{align-items:center;gap:.5rem;display:inline-flex}@media (width<=640px){.lot-form-card{flex-direction:column;align-items:flex-start}}.btn-danger{color:#fff}.btn-danger:hover{background:#c62828}.lot-documents-page .document-actions .btn-icon{cursor:pointer;color:#666;background:0 0;border:none;flex:0 0 2.75rem;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;padding:0;font-size:1.35rem;line-height:1;transition:color .2s;display:inline-flex}.lot-documents-page .document-actions .btn-icon:hover{color:#1976d2}.lot-documents-page .document-actions .btn-icon.btn-danger:hover{color:#d32f2f}.error-state .btn{margin-top:1rem}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:500px;padding:2rem;box-shadow:0 4px 16px #0003}.modal-content h3{color:#333;margin:0 0 1rem;font-size:1.5rem}.modal-content p{color:#666;margin:.5rem 0}.document-viewer-modal{max-width:620px}.document-viewer-file-name{overflow-wrap:anywhere;font-weight:600;color:#333!important}.document-viewer-list{border:1px solid #e5e5e5;border-radius:6px;flex-direction:column;gap:.75rem;max-height:280px;margin-top:1.25rem;padding:.75rem;display:flex;overflow-y:auto}.document-viewer-option{color:#333;cursor:pointer;align-items:center;gap:.75rem;display:flex}.modal-warning{color:#d32f2f;font-weight:600;margin-top:1rem!important}.modal-actions .btn-danger{color:#fff!important;background:#d32f2f!important}.modal-actions .btn-danger:hover{background:#c62828!important}@media (width<=768px){.lot-documents-page{padding:1rem}.documents-toolbar{flex-direction:column;align-items:stretch}.search-bar{max-width:none}.filter-tabs{justify-content:center}.upload-button{justify-content:center;width:100%}.documents-grid{grid-template-columns:1fr}.document-row{flex-direction:column;align-items:flex-start}.document-actions{justify-content:space-between;width:100%}.modal-content{width:95%}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}}.view-mode-toggle{border:1px solid #ddd;border-radius:8px;gap:0;width:fit-content;margin-bottom:1.5rem;display:flex;overflow:hidden}.view-mode-button{cursor:pointer;color:#666;background:#fff;border:none;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.view-mode-button:not(:last-child){border-right:1px solid #ddd}.view-mode-button.active{color:#fff;background:#1976d2}.view-mode-button:hover:not(.active){background:#f0f0f0}.forms-view-container{margin-top:1rem}.lot-forms-list{flex-direction:column;gap:1rem;display:flex}.lot-form-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.lot-form-info{flex:1;align-items:center;gap:1rem;display:flex}.lot-form-title{color:#333;text-transform:capitalize;margin:0;font-size:1rem;font-weight:600}.lot-form-status{text-transform:uppercase;letter-spacing:.03em;border-radius:12px;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.lot-form-status-assigned{color:#1565c0;background:#e3f2fd}.lot-form-status-in_progress{color:#e65100;background:#fff3e0}.lot-form-status-submitted{color:#2e7d32;background:#e8f5e9}.lot-form-status-completed{color:#7b1fa2;background:#f3e5f5}.lot-form-status-reopened{color:#c62828;background:#fce4ec}.lot-form-meta{color:#888;gap:1.5rem;font-size:.85rem;display:flex}.lot-form-meta p{margin:0}.lot-form-action{white-space:nowrap;padding:.5rem 1rem;font-size:.85rem}.form-action-edit{background-color:var(--color-accent);color:var(--color-white)}.form-action-edit:hover{background-color:var(--color-primary);transform:translateY(-1px)}.form-action-history{background-color:var(--color-secondary);color:var(--color-white)}.form-action-history:hover{background-color:var(--color-primary);transform:translateY(-1px)}.forms-form-group .required{color:var(--color-danger);margin-left:.25rem}.forms-form-input,.forms-form-select,.forms-form-textarea{border:2px solid var(--color-light);width:100%;font-size:1rem;font-family:var(--font-body);box-sizing:border-box;border-radius:8px;padding:.75rem;transition:border-color .3s}.forms-instructions{border-left:4px solid var(--color-accent);margin-bottom:var(--spacing-md);color:var(--color-text);background-color:#f0f4f8;border-radius:6px;padding:1rem 1.25rem;line-height:1.6}.forms-instructions p{margin:0}.forms-external-link{margin-bottom:var(--spacing-md)}.forms-external-link a{background-color:var(--color-accent);color:var(--color-white);border-radius:8px;padding:.625rem 1.25rem;font-weight:500;text-decoration:none;transition:background-color .3s,transform .2s;display:inline-block}.forms-external-link a:hover{background-color:var(--color-primary);transform:translateY(-1px)}.forms-section-header{border-bottom:2px solid var(--color-secondary);margin:var(--spacing-lg) 0 var(--spacing-md);justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.forms-section-header:first-child{margin-top:0}.forms-section-header h3{font-family:var(--font-heading);color:var(--color-primary);margin:0;font-size:1.25rem}.forms-section-ref{color:var(--color-accent);white-space:nowrap;font-size:.875rem;text-decoration:none}.forms-section-ref:hover{text-decoration:underline}.forms-file-dropzone{border:2px dashed var(--color-secondary);text-align:center;border-radius:8px;padding:1.5rem;transition:border-color .3s}.forms-file-dropzone:hover{border-color:var(--color-accent)}.forms-file-dropzone input[type=file]{font-family:var(--font-body)}.forms-file-uploading{color:var(--color-accent);margin-top:.5rem;font-style:italic}.forms-file-uploaded{background-color:#f0fdf4;border:2px solid #86efac;border-radius:8px;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.forms-file-name{color:var(--color-text);font-weight:500}.forms-file-remove{color:var(--color-danger);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.5rem;line-height:1}.forms-file-remove:hover{transform:scale(1.2)}.forms-field-error{color:var(--color-danger);margin-top:.5rem;font-size:.875rem}.forms-radio-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem;display:grid}.forms-radio-card{border:2px solid var(--color-light);background:var(--color-white);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:.5rem;padding:1rem .75rem;transition:all .25s;display:flex}.forms-radio-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #628db526}.forms-radio-card.selected{border-color:var(--color-accent);background-color:#eef4fa;box-shadow:0 0 0 3px #628db540}.forms-radio-indicator{border:2px solid var(--color-secondary);border-radius:50%;flex-shrink:0;width:20px;height:20px;transition:border-color .2s;position:relative}.forms-radio-card.selected .forms-radio-indicator{border-color:var(--color-accent)}.forms-radio-card.selected .forms-radio-indicator:after{content:"";background-color:var(--color-accent);border-radius:50%;width:10px;height:10px;position:absolute;top:3px;left:3px}.forms-radio-label{color:var(--color-text);text-transform:capitalize;font-size:.875rem;font-weight:500}.forms-modal-button-success{background-color:var(--color-success);color:var(--color-white)}.forms-modal-button-success:hover{background-color:#22c55e;transform:translateY(-1px)}.forms-history-list{gap:var(--spacing-md);flex-direction:column;display:flex}.history-item{padding:var(--spacing-md);border:2px solid var(--color-light);background-color:#fafafa;border-radius:8px}.history-item h4{margin:0 0 var(--spacing-sm) 0;color:var(--color-primary);font-family:var(--font-heading)}.history-item p{margin:.5rem 0}.history-data{margin-top:var(--spacing-sm)}.history-data-empty{color:var(--color-text-muted);margin:.5rem 0 0}.history-data-list{margin-top:var(--spacing-sm);border:1px solid var(--color-light);background-color:var(--color-white);border-radius:6px;overflow:hidden}.history-data-row{gap:var(--spacing-sm);padding:.5rem var(--spacing-sm);border-bottom:1px solid var(--color-light);grid-template-columns:minmax(140px,220px) 1fr;font-size:.9rem;display:grid}.history-data-row:last-child{border-bottom:none}.history-data-key{color:var(--color-text);word-break:break-word;font-weight:600}.history-data-value{color:var(--color-text);word-break:break-word}@media (width<=768px){.forms-hero{height:40vh;min-height:300px}.forms-hero-title{font-size:2rem}.forms-container{width:90%}.forms-header{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.forms-list{grid-template-columns:1fr}.forms-modal{max-width:95%}.forms-modal-footer{flex-direction:column-reverse}.forms-modal-button{width:100%}.forms-radio-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.forms-section-header{flex-direction:column;align-items:flex-start;gap:.25rem}}.forms-selection-container{width:100%;max-width:800px;margin:0 auto}.form-card.clickable{cursor:pointer;transition:all .3s}.form-card.clickable:hover{transform:translateY(-4px);box-shadow:0 6px 16px #4c4d4f33}.form-count-badge{background-color:var(--color-accent);color:var(--color-white);border-radius:12px;padding:.25rem .75rem;font-size:.875rem;font-weight:500}.no-forms-text{color:var(--color-text-muted);font-style:italic}.lots-list{margin-top:var(--spacing-md)}.lots-list h3{font-family:var(--font-heading);color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:1.5rem}.forms-hero-subtitle{color:var(--color-light);margin-top:var(--spacing-xs);opacity:.9;font-size:1.125rem}.forms-all-projects{flex-direction:column;gap:2rem;display:flex}.forms-project-group{background:#fafafa;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem}.forms-project-title{font-family:var(--font-heading);color:var(--color-primary);border-bottom:2px solid var(--color-accent);margin:0 0 1rem;padding-bottom:.75rem;font-size:1.5rem}.form-status-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:12px;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.form-status-badge.status-assigned{color:#1565c0;background:#e3f2fd}.form-status-badge.status-in-progress{color:#e65100;background:#fff3e0}.form-status-badge.status-submitted{color:#2e7d32;background:#e8f5e9}.form-status-badge.status-completed{color:#7b1fa2;background:#f3e5f5}.form-status-badge.status-reopened{color:#c62828;background:#fce4ec}.lots-list-dashboard{background:var(--color-white,#fff);width:100%;min-height:100vh;overflow-x:hidden}.lld-content{max-width:1400px;margin:0 auto;padding:2rem}.lld-filter-bar{border-bottom:1px solid #e0e0e0;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.25rem 0;display:flex}.lld-project-select{cursor:pointer;background:#fff;border:2px solid #e0e0e0;border-radius:6px;min-width:220px;padding:.6rem 1rem;font-size:.95rem;transition:border-color .2s}.lld-project-select:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #1976d21a}.project-section{margin-bottom:3rem}.project-header{border-radius:8px 8px 0 0;align-items:center;padding:1rem 1.5rem;display:flex}.project-title{color:#fff;text-shadow:0 1px 3px #00000040;letter-spacing:-.01em;margin:0;font-size:1.75rem;font-weight:600}.project-no-lots{text-align:center;color:#888;background:#fff;border-radius:0 0 10px 10px;padding:2rem;font-size:.95rem;font-style:italic;box-shadow:0 2px 10px #00000014}.lots-table{background:#fff;border-radius:0 0 10px 10px;overflow:visible;box-shadow:0 2px 10px #00000014}.lots-table-header,.lots-table-row{grid-template-columns:1.3fr .8fr 1.8fr 1fr 1fr 1.1fr 1fr minmax(160px,1.3fr);align-items:center;gap:1rem;display:grid}.lots-table-header{color:#444;background:#f6f7f9;border-bottom:2px solid #e2e5ea;padding:1.2rem 1.5rem;font-size:.92rem;font-weight:700}.lots-table-row{border-bottom:1px solid #eef0f3;padding:1.2rem 1.5rem;transition:background-color .2s}.lots-table-row:last-child{border-bottom:none}.lots-table-row:hover{background:#fafbfc}.lots-cell{color:#333;text-overflow:ellipsis;white-space:nowrap;word-break:break-word;font-size:.95rem;overflow:hidden}.lots-cell-actions{justify-content:flex-end;min-width:160px;display:flex}.lots-action-button{white-space:nowrap;text-align:center;cursor:pointer;letter-spacing:0;border:none;border-radius:6px;width:100%;padding:.4rem .7rem;font-size:.65rem;font-weight:300;transition:background .2s,transform .1s}.lots-action-button:hover{transform:translateY(-2px)}.lots-action-button:active{transform:translateY(0)}.lot-status{text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.lot-status-available{color:#2e7d32;background:#e8f5e9}.lot-status-sold{color:#c62828;background:#ffebee}.lot-status-pending{color:#ef6c00;background:#fff3e0}.lot-status-reserved{color:#1565c0;background:#e3f2fd}.btn-primary:hover{background:#1565c0}.loading-state,.error-state,.empty-state{text-align:center;color:#666;padding:3rem;font-size:1.125rem}.error-state{color:#d32f2f}@media (width<=768px){.lld-content{padding:1rem}.lld-filter-bar{flex-direction:column;align-items:flex-start;gap:.5rem}.lld-project-select{width:100%;min-width:unset}.lots-table-header,.lots-table-row{grid-template-columns:1fr;gap:.5rem}.lots-table-header{padding:1rem;display:none}.lots-table-row{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;padding:1.2rem}.lots-cell{white-space:normal;grid-template-columns:100px 1fr;gap:.5rem;display:grid}.lots-cell:before{content:attr(data-label);color:#666;white-space:nowrap;font-weight:600}.lots-cell-actions{grid-column:1/-1;justify-content:flex-start;margin-top:.5rem}.lots-action-button{padding:.75rem 1rem}}.documents-page{background-color:var(--background-color);box-sizing:border-box;flex-direction:column;max-width:1200px;min-height:100vh;margin:0 auto;padding:24px 18px 36px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;display:flex}.documents-header{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;display:flex}.documents-header h1{color:var(--secondary-color);font-size:2rem;font-weight:700}.btn-upload:hover{background-color:var(--accent-color);box-shadow:0 4px 10px #00000026}.spinning{animation:1s linear infinite spin}.document-list-container{background-color:var(--white);border:1px solid #e5e5e5;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.document-table table{border-collapse:collapse;width:100%}.document-table thead th{color:var(--text-secondary);text-align:left;letter-spacing:.5px;text-transform:uppercase;background-color:#fafafa;border-bottom:1px solid #e5e5e5;padding:14px 20px;font-size:.8rem;font-weight:600}.document-table tbody td{color:var(--text-primary);border-bottom:1px solid #f0f0f0;padding:12px 20px;font-size:.9rem}.document-table tbody tr:last-child td{border-bottom:none}.document-table tbody tr:hover{background-color:#f8f8f8}.file-name-cell{align-items:center;font-weight:500;display:flex}.file-icon{margin-right:8px;font-size:1.1rem}.document-action-buttons button{border-radius:6px;margin-right:5px;padding:5px 10px;font-size:.8rem;font-weight:500;transition:background-color .15s}.btn-view,.btn-delete{color:var(--white)}.btn-view{background-color:var(--primary-color)}.btn-view:hover{background-color:var(--accent-color)}.btn-delete{background-color:#ef4444}.btn-delete:hover{background-color:#dc2626}.modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--white);opacity:0;border-radius:12px;width:90%;max-width:500px;max-height:90vh;padding:30px;animation:.2s cubic-bezier(.2,.8,.7,1) forwards fadeIn;overflow-y:auto;transform:scale(.95);box-shadow:0 10px 20px #00000040,0 6px 6px #00000026}.modal-content h2{color:var(--secondary-color);border-bottom:1px solid #e5e5e5;margin-bottom:20px;padding-bottom:10px;font-size:1.5rem;font-weight:600}.form-group input[type=file]{cursor:pointer;background-color:#f9f9f9;border:1px solid #cfcfcf;border-radius:6px;width:100%;padding:12px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.modal-actions button{border-radius:9999px;padding:10px 20px}@media (width<=600px){.modal-content{width:95%;padding:20px}.modal-actions{flex-direction:column-reverse;gap:15px}.modal-actions button{width:100%;padding:14px 20px;font-size:1rem}}.photos-page{background-color:var(--background-color);box-sizing:border-box;flex-direction:column;max-width:1200px;min-height:100vh;margin:0 auto;padding:16px 18px 32px;display:flex}.photos-header{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;display:flex}.photos-actions{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.photos-actions button{white-space:nowrap}.photos-header h1{color:var(--secondary-color);font-size:2rem;font-weight:700}.btn-upload{background-color:var(--primary-color);color:var(--white);border-radius:9999px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;display:flex;box-shadow:0 4px 6px #0000001a}.btn-upload:hover{background-color:var(--accent-color)}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.photo-card{background-color:var(--white);box-shadow:var(--box-shadow);border-radius:12px;transition:transform .2s;position:relative;overflow:hidden}.photo-card:hover{transform:translateY(-4px);box-shadow:0 8px 15px #0000001a}.photo-image{object-fit:cover;width:100%;height:200px;display:block}.photo-overlay{width:100%;color:var(--white);background:#0009;padding:10px 15px;transition:opacity .2s;position:absolute;bottom:0;left:0}.photo-filename{margin:0;font-size:.95rem;font-weight:600}.photo-meta{color:#ccc;margin:2px 0 0;font-size:.75rem}.photo-card .btn-delete{color:var(--white);opacity:0;background-color:#ef4444cc;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;display:flex;position:absolute;top:10px;right:10px}.photo-card:hover .btn-delete{opacity:1}.photo-card .btn-unarchive{color:var(--white);opacity:0;background-color:#10b981e6;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;display:flex;position:absolute;top:10px;right:10px}.photo-card:hover .btn-unarchive,.photo-card.archived .btn-unarchive{opacity:1}@media (width<=768px){.photo-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.photo-image{height:150px}}@media (width<=480px){.photo-grid{grid-template-columns:1fr}.photos-page{padding:20px}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer;overflow:visible}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-toolbar{-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-toolbar .rbc-toolbar-label{text-align:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 10px}.rbc-toolbar button{color:#373a3c;text-align:center;vertical-align:middle;white-space:nowrap;background:0 0;border:1px solid #ccc;border-radius:4px;margin:0;padding:.375rem 1rem;line-height:normal;display:inline-block}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-color:#e6e6e6;background-image:none;border-color:#adadad;-webkit-box-shadow:inset 0 3px 5px #00000020;box-shadow:inset 0 3px 5px #00000020}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{white-space:nowrap;display:inline-block}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (width<=767px){.rbc-toolbar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.rbc-event{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;color:#fff;cursor:pointer;text-align:left;background-color:#3174ad;border:none;border-radius:5px;width:100%;margin:0;padding:2px 5px}.rbc-slot-selecting .rbc-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected{background-color:#265985}.rbc-event:focus{outline:5px auto #3b99fc}.rbc-event-label{text-overflow:ellipsis;white-space:nowrap;font-size:80%;display:block;overflow:hidden}.rbc-event-overlaps{-webkit-box-shadow:-1px 1px 5px #33333380;box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-right-radius:0;border-bottom-left-radius:0}.rbc-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-row-segment{padding:0 1px 1px}.rbc-row-segment .rbc-event-content{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{text-overflow:ellipsis;white-space:nowrap;z-index:4;color:#3174ad;background-color:#ffffff4d;height:auto;font-size:85%;font-weight:700;line-height:normal;display:block;overflow:hidden}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid #ddd;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex:1 0 0;flex:1 0 0;width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative}.rbc-month-header{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-month-row{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-flex:1;-ms-flex-preferred-size:0;-ms-flex-direction:column;flex-direction:column;-ms-flex:1 0 0;flex:1 0 0;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;overflow:hidden}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{text-align:right;-webkit-box-flex:1;-ms-flex:1 1 0;flex:1 1 0;min-width:0;padding-right:5px}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-flex:1;-ms-flex-direction:row;flex-direction:row;-ms-flex:1 0 0;flex:1 0 0;display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;inset:0 1px 0 0;overflow:hidden}.rbc-day-bg{-webkit-box-flex:1;-ms-flex:1 0;flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{z-index:5;background-color:#fff;border:1px solid #e5e5e5;padding:10px;position:absolute;-webkit-box-shadow:0 5px 15px #00000040;box-shadow:0 5px 15px #00000040}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex:1 0 0;flex:1 0 0;display:-webkit-box;display:-ms-flexbox;display:flex;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{border-spacing:0;border-collapse:collapse;border:1px solid #ddd;width:100%}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{vertical-align:top;padding:5px 10px}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{text-transform:lowercase;padding-left:15px;padding-right:15px}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:left;border-bottom:1px solid #ddd;padding:3px 5px}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-time-column .rbc-timeslot-group{-webkit-box-flex:1;-ms-flex:1;flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;min-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-time-gutter,.rbc-header-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{margin-right:10px;position:absolute;inset:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;align-items:flex-start;min-height:20px;max-height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;overflow:hidden}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{-webkit-box-flex:0;-ms-flex:none;flex:none;width:auto;padding-right:5px}.rbc-day-slot .rbc-event-content{word-wrap:break-word;-webkit-box-flex:1;-ms-flex:1 1 0;flex:1 1 0;width:100%;height:100%;min-height:1em;line-height:1}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{z-index:10;background-color:#fff;border-right:1px solid #ddd;margin-right:-1px;position:sticky;left:0}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{-webkit-box-flex:1;-ms-flex-preferred-size:0;-ms-flex:1 0 0;flex:1 0 0;min-width:auto}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{-webkit-box-flex:1;-ms-flex-preferred-size:0;-ms-flex:1 1 0;flex:1 1 0;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{-webkit-box-flex:1;-ms-flex:1 0 0;flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;color:#fff;background-color:#00000080;width:100%;padding:3px;font-size:75%;position:absolute}.rbc-slot-selecting{cursor:move}.rbc-time-view{border:1px solid #ddd;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1;width:100%;min-height:0;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{-webkit-box-sizing:content-box;box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{z-index:4;position:relative}.rbc-time-view .rbc-row{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:20px}.rbc-time-header{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-flex:0;-ms-flex-direction:row;flex-direction:row;-ms-flex:none;flex:none;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-left:1px solid #ddd;border-right-width:0}.rbc-time-header>.rbc-row:first-child,.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{border-left:1px solid #ddd;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1;min-width:0;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;-ms-flex-negative:0;flex-shrink:0}.rbc-time-content{border-top:2px solid #ddd;-webkit-box-flex:1;-ms-flex:1 0;flex:1 0;align-items:flex-start;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;overflow-y:auto}.rbc-time-content>.rbc-time-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:100%}.rbc-current-time-indicator{z-index:3;pointer-events:none;background-color:#74ad31;height:1px;position:absolute;left:0;right:0}.rbc-resource-grouping.rbc-time-header-content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.rbc-calendar{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;align-items:stretch;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :before,.rbc-calendar :after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full{position:absolute;inset:0;overflow:hidden}.rbc-ellipsis{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{text-overflow:ellipsis;white-space:nowrap;text-align:center;vertical-align:middle;border-bottom:1px solid #ddd;-webkit-box-flex:1;-ms-flex:1 0;flex:1 0;min-height:0;padding:0 3px;font-size:90%;font-weight:700;overflow:hidden}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;background:0 0;border:none;margin:0;padding:0}.rbc-row-content{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:4;position:relative}.rbc-row-content-scrollable{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rbc-row-content-scrollable .rbc-row-content-scroll-container{-ms-overflow-style:none;scrollbar-width:none;height:100%;overflow-y:scroll}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.delete-schedule-modal{width:min(520px,95%)}.delete-schedule-body{color:var(--text-primary,#2c3e50);padding:14px 0 4px;line-height:1.5}.modal-danger{background:var(--danger-color,#e74c3c);color:var(--white,#fff);border:1px solid var(--danger-border,#e74c3c73);cursor:pointer;border-radius:8px;padding:10px 16px;font-weight:700;transition:background .15s,transform .1s}.modal-danger:hover:not(:disabled){background:var(--danger-color-strong,#d63c32)}.modal-danger:disabled{opacity:.65;cursor:not-allowed}.project-schedule-page{max-width:1400px;color:var(--text-primary,#2c3e50);margin:0 auto;padding:20px}.schedule-header{border-bottom:2px solid var(--card-border,#e0e0e0);justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;display:flex}.schedule-subtitle{color:var(--text-secondary,#6b7a90);margin-top:4px}.schedule-header h1{color:var(--text-primary,#2c3e50);margin:0;font-size:28px}.schedule-actions{align-items:center;gap:10px;display:flex}.primary{background:var(--accent-color,#5a7d8c);color:var(--white,#fff);border-radius:var(--border-radius,6px);cursor:pointer;box-shadow:var(--box-shadow,0 2px 8px #0000001a);border:none;padding:10px 16px;font-weight:700;transition:background .2s,transform .1s}.primary:hover{background:var(--primary-color,#3174ad)}.primary:active{transform:translateY(1px)}.ghost{border:1px solid var(--card-border,#d7e1ec);color:var(--text-primary,#2c3e50);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;display:inline-flex}.ghost:hover{border-color:var(--primary-color,#3174ad);color:var(--primary-color,#3174ad)}.create-schedule-button{background:var(--accent-color,#5a7d8c);color:var(--white,#fff);border-radius:var(--border-radius,6px);cursor:pointer;box-shadow:var(--box-shadow,0 2px 8px #0000001a);border:none;padding:10px 18px;font-weight:600;transition:background-color .2s,transform .1s}.schedule-body{grid-template-columns:2fr 1fr;align-items:stretch;gap:20px;display:grid}.calendar-section{background:var(--white,#fff);border-radius:var(--border-radius,8px);box-shadow:var(--box-shadow,0 2px 8px #0000001a);flex-direction:column;min-height:70vh;padding:12px;display:flex}.calendar-section .rbc-calendar{flex:1;min-height:0}.schedule-list{background:var(--white,#fff);border-radius:var(--border-radius,8px);box-shadow:var(--box-shadow,0 2px 8px #0000001a);border:1px solid var(--card-border,#e6eef5);max-height:70vh;padding:16px;overflow-y:auto}.list-title{color:var(--text-primary,#2c3e50);margin-bottom:12px;font-weight:700}.empty{border:1px dashed var(--card-border,#d7e1ec);border-radius:var(--border-radius,8px);color:var(--text-secondary,#6b7a90);background:var(--background-color,#f8fafc);padding:12px}.create-schedule-button:hover{background:var(--primary-color,#3174ad)}.create-schedule-button:active{transform:translateY(1px)}.back-button-small{background-color:var(--primary-color,#3174ad);color:var(--white,#fff);border-radius:var(--border-radius,5px);cursor:pointer;border:none;justify-content:center;align-items:center;padding:10px 20px;font-size:14px;line-height:1;transition:background-color .3s;display:inline-flex}.back-button-small:hover{background-color:var(--secondary-color,#255a8a)}.schedule-layout{grid-template-columns:5fr 2fr;align-items:start;gap:20px;display:grid}.schedule-panel{background:var(--white,#fff);border-radius:var(--border-radius,8px);box-shadow:var(--box-shadow,0 2px 8px #0000001a);min-width:0;padding:12px;overflow:hidden}.rbc-time-view{width:100%;min-width:0}.rbc-calendar{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.rbc-time-view .rbc-allday-cell,.rbc-time-view .rbc-allday-events,.rbc-time-view .rbc-time-header .rbc-row.rbc-allday-cell,.rbc-time-view .rbc-time-header .rbc-label.rbc-header{display:none}.rbc-time-view .rbc-time-header-content{border-bottom:1px solid var(--card-border,#e0e0e0)}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:8px;display:flex}.toolbar-select{border:1px solid var(--card-border,#d7e1ec);background:var(--white,#fff);color:var(--text-primary,#2c3e50);border-radius:6px;padding:6px 10px;font-size:14px}.toolbar-button{border:1px solid var(--card-border,#d7e1ec);background:var(--white,#fff);cursor:pointer;color:var(--text-primary,#2c3e50);border-radius:6px;padding:8px 10px;transition:all .2s}.toolbar-button:hover{border-color:var(--primary-color,#3174ad);color:var(--primary-color,#3174ad)}.toolbar-button-active{border-color:var(--primary-color,#3174ad);color:var(--primary-color,#3174ad);background:#3174ad1a}.today-chip{color:var(--primary-color,#3174ad);background:#3174ad1a;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:600}.rbc-toolbar{gap:8px;margin-bottom:8px}.rbc-event{background:var(--accent-color,#5a7d8c);border:none;border-radius:6px;align-items:center;height:80%;padding:4px;display:flex;box-shadow:0 1px 2px #0003;width:calc(100% - 12px)!important;margin-left:6px!important;margin-right:6px!important}.rbc-time-view .rbc-event{width:100%!important;margin-left:0!important;margin-right:0!important}.rbc-time-view .rbc-day-slot .rbc-events-container{margin-right:0!important}.rbc-event-label{line-height:1.2;white-space:normal!important;text-overflow:clip!important;overflow:visible!important}.rbc-event-content{align-items:center;width:100%;padding-left:2px;padding-right:2px;display:flex}.rbc-today,.rbc-day-today-strong{box-shadow:inset 3px 0 0 var(--primary-color,#3174ad);background-color:#3174ad14!important}.rbc-month-view{min-height:520px}.schedule-side{background:var(--white,#fff);border:1px solid var(--card-border,#e6eef5);border-radius:var(--border-radius,8px);max-height:640px;box-shadow:var(--box-shadow,0 1px 3px #0000000f);padding:16px;overflow-y:auto}.schedule-side h2{color:var(--text-primary,#2c3e50);margin:0 0 12px;font-size:18px}.schedule-empty-state{border:1px dashed var(--card-border,#d7e1ec);border-radius:var(--border-radius,8px);color:var(--text-secondary,#6b7a90);background:var(--background-color,#f8fafc);margin-bottom:12px;padding:12px 14px}.schedule-list-items{flex-direction:column;gap:10px;display:flex}.schedule-card{background:var(--white,#fff);border:1px solid var(--card-border,#e0e6ed);border-radius:var(--border-radius,8px);box-shadow:var(--box-shadow,0 1px 3px #0000000f);gap:12px;margin-bottom:3%;padding:12px;display:flex}.card-top{justify-content:space-between;gap:12px;width:100%;display:flex}.card-title,.schedule-card .card-title{font-family:inherit;font-size:15px;font-weight:700;line-height:1.3;color:#0f172a!important}.card-meta{color:var(--text-secondary,#6b7a90);margin-top:2px;font-size:12px}.card-chip{color:var(--text-primary,#2c3e50);background:#3174ad14;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.card-actions{align-items:center;gap:8px;display:flex}.schedule-card-clickable{cursor:pointer;transition:transform 50ms,box-shadow .1s}.schedule-card-clickable:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001f}.schedule-card-date{min-width:90px;color:var(--primary-color,#3174ad);flex-direction:column;align-items:flex-start;gap:4px;font-weight:600;display:flex}.schedule-card-day{text-transform:uppercase;letter-spacing:.5px;font-size:12px}.schedule-card-date-text{color:var(--text-primary,#2c3e50);font-size:13px}.schedule-card-body{flex:1}.schedule-card-title{color:var(--text-primary,#2c3e50);margin-bottom:4px;font-weight:600}.schedule-card-meta{color:var(--text-secondary,#6b7a90);font-size:12px}.custom-event{color:var(--white,#fff);flex-direction:column;gap:2px;padding:4px 6px;display:flex}.custom-event-title{font-size:12px;font-weight:700}.custom-event-meta{opacity:.85;font-size:11px}.schedule-selected{border:1px solid var(--card-border,#d8e2ef);border-radius:var(--border-radius,8px);background:var(--white,#fff);box-shadow:var(--box-shadow,0 1px 3px #0000000d);word-break:break-word;overflow-wrap:anywhere;margin-top:16px;margin-bottom:16px;padding:12px}.schedule-selected h3{color:var(--text-primary,#2c3e50);margin:0 0 8px;font-size:16px}.schedule-selected-title{margin-bottom:4px;font-weight:600}.schedule-selected-meta{color:var(--text-secondary,#6b7a90);margin-bottom:6px;font-size:12px}.schedule-selected-dates{color:var(--text-primary,#2c3e50);font-size:12px}.schedule-selected-tasks ul{margin:10px 0 0;padding-left:22px}.schedule-selected-tasks li{word-break:break-word;overflow-wrap:anywhere;padding:4px 0}.schedule-loading,.schedule-error{flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:40px;display:flex}.schedule-loading .spinner{border:5px solid var(--card-border,#f3f3f3);border-top:5px solid var(--primary-color,#3174ad);border-radius:50%;width:50px;height:50px;margin-bottom:20px;animation:1s linear infinite spin}.schedule-loading p,.schedule-error p{color:var(--text-secondary,#666);margin:10px 0;font-size:16px}.schedule-error h2{color:var(--accent-color,#e74c3c);margin-bottom:15px}.back-button{background-color:var(--primary-color,#3174ad);color:var(--white,#fff);border-radius:var(--border-radius,5px);cursor:pointer;border:none;justify-content:center;align-items:center;margin-top:20px;padding:12px 24px;font-size:16px;line-height:1;transition:background-color .3s;display:inline-flex}.back-button:hover{background-color:var(--secondary-color,#255a8a)}.scheduler-view{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.scheduler-view .scheduler-bg-table .scheduler-content td{border-color:#e0e0e0}.scheduler-view .event-item{border-radius:4px;padding:4px 8px;font-size:12px}.scheduler-view .header2-text{color:#2c3e50;font-weight:600}@media (width<=768px){.project-schedule-page{padding:10px}.schedule-header{flex-direction:column;align-items:flex-start;gap:15px}.schedule-header h1{font-size:22px}.schedule-layout,.schedule-body{grid-template-columns:1fr}.schedule-side,.schedule-list{max-height:none}}@media (width<=600px){.schedule-panel{overflow-x:hidden}.rbc-time-view,.rbc-time-view .rbc-time-header-content,.rbc-time-view .rbc-time-content{min-width:0}.rbc-time-view .rbc-event{word-break:break-word;padding:4px 6px;font-size:12px;line-height:1.25}.rbc-event-label{font-size:11px;line-height:1.2}}.schedule-modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.schedule-modal{background:var(--white,#fff);border-radius:10px;width:min(540px,90%);max-height:80vh;padding:20px;overflow-y:auto;box-shadow:0 10px 30px #0000002e}.schedule-modal-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.schedule-modal-title{color:var(--text-primary,#2c3e50);font-size:18px;font-weight:700}.modal-close{cursor:pointer;color:var(--text-secondary,#6b7a90);background:0 0;border:none;font-size:20px}.schedule-modal-section{color:var(--text-primary,#2c3e50);margin-bottom:12px;font-size:14px}.schedule-modal-section h4{color:var(--text-secondary,#6b7a90);margin:0 0 6px;font-size:14px;font-weight:600}.schedule-modal-tasks ul{flex-direction:column;gap:10px;margin:6px 0 0;padding-left:0;list-style:none;display:flex}.schedule-modal-actions{justify-content:flex-end;margin-top:16px;display:flex}.edit-schedule-modal{width:min(820px,95%)}.schedule-task-item{width:100%}.schedule-task-card{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:14px 10px;transition:none;display:flex}.schedule-task-card:disabled,.schedule-task-card[aria-disabled=true]{cursor:default;opacity:.85}.schedule-task-card:not(:disabled):hover,.schedule-task-card:not(:disabled):active{background:0 0}.schedule-task-card:focus-visible{outline:2px solid var(--accent-color,#5a7d8c);outline-offset:2px}.schedule-task-copy{color:var(--text-primary,#2c3e50);flex-direction:column;gap:4px;display:flex}.schedule-task-title{color:var(--text-primary,#2c3e50);font-weight:700}.schedule-task-meta{color:var(--text-secondary,#6b7a90);font-size:12px}.schedule-task-status{align-self:stretch;align-items:center;display:flex}.create-schedule-modal{width:min(640px,95%)}.tasks-modal{width:min(760px,95%)}.create-schedule-form{flex-direction:column;gap:14px;display:flex}.form-row-note{border:1px solid var(--card-border,#d7e1ec);background:#3174ad0d;border-radius:8px;padding:10px 12px}.form-row label{color:var(--text-primary,#2c3e50);flex-direction:column;gap:6px;font-weight:600;display:flex}.form-row input{border:1px solid var(--card-border,#d7e1ec);background:var(--white,#fff);color:var(--text-primary,#2c3e50);border-radius:8px;padding:10px 12px}.two-col{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.tasks-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.tasks-title{color:var(--text-primary,#2c3e50);font-weight:700}.tasks-subtitle{color:var(--text-secondary,#6b7a90);font-size:13px}.task-add-button{border:1px solid var(--accent-color,#5a7d8c);color:var(--accent-color,#5a7d8c);cursor:pointer;background:#5a7d8c1a;border-radius:6px;padding:8px 12px;font-weight:600}.task-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.task-actions{justify-content:flex-end;margin:12px 0;display:flex}.task-row{border:1px solid var(--card-border,#d7e1ec);background:var(--secondary-color,#f2f4f7);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.task-row input{border:1px solid var(--card-border,#d7e1ec);background:var(--white,#fff);width:100%;color:var(--text-primary,#2c3e50);border-radius:8px;padding:10px 12px}.task-remove-button{border:1px solid var(--card-border,#d7e1ec);cursor:pointer;color:var(--text-secondary,#6b7a90);background:0 0;border-radius:8px;padding:8px 10px}.task-row-header{justify-content:space-between;align-items:center;display:flex}.task-row-title{color:var(--text-primary,#2c3e50);font-weight:700}.task-row-actions{align-items:center;gap:8px;display:flex}.task-edit-button{border:1px solid var(--accent-color,#5a7d8c);color:var(--accent-color,#5a7d8c);cursor:pointer;background:#5a7d8c14;border-radius:8px;align-items:center;gap:4px;padding:8px 12px;transition:background .2s,box-shadow .2s,transform .1s;display:inline-flex}.task-edit-button:hover{background:#5a7d8c29;box-shadow:0 2px 6px #0000000f}.task-edit-button.is-active{background:var(--accent-color,#5a7d8c);color:var(--white,#fff);box-shadow:0 4px 12px #5a7d8c40}.task-edit-button:active{transform:translateY(1px)}.task-row-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.task-row-grid label,.task-row-full{color:var(--text-secondary,#6b7a90);flex-direction:column;gap:6px;font-size:13px;display:flex}.task-row select,.task-row textarea,.task-row input{border:1px solid var(--card-border,#d7e1ec);background:var(--white,#fff);width:100%;color:var(--text-primary,#2c3e50);border-radius:8px;padding:10px 12px}.task-row textarea{resize:vertical;min-height:64px}.task-row-numbers input{padding-right:6px}.task-dto-preview{border:1px solid var(--card-border,#d7e1ec);background:#fdfefe;border-radius:12px;margin-top:14px}.task-dto-preview-header{justify-content:space-between;align-items:center;padding:12px;display:flex}.task-dto-count{color:var(--accent-color,#5a7d8c);background:#5a7d8c1a;border-radius:12px;padding:4px 8px;font-weight:600}.task-dto-preview-body{color:#e2e8f0;background:#0f172a;border-bottom-right-radius:12px;border-bottom-left-radius:12px;max-height:220px;margin:0;padding:12px;font-size:12px;overflow:auto}.form-error{color:var(--accent-color,#e74c3c);background:#e74c3c1a;border:1px solid #e74c3c40;border-radius:8px;padding:10px 12px;font-weight:600}.form-actions{justify-content:flex-end;gap:10px;display:flex}.form-actions.with-danger{justify-content:space-between;align-items:center}.form-actions-main{gap:10px;display:flex}.form-actions-danger{display:flex}.modal-primary{background:var(--accent-color,#5a7d8c);color:var(--white,#fff);cursor:pointer;border:none;border-radius:8px;padding:10px 16px;font-weight:700}.modal-secondary{cursor:pointer;border-radius:8px;padding:10px 16px}.task-details-page{max-width:1100px}.task-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary,#6b7a90);margin-bottom:4px;font-size:12px}.task-subtle{color:var(--text-secondary,#6b7a90);font-size:14px}.task-header-actions{align-items:center;gap:10px;display:flex}.task-chip{border:1px solid var(--card-border,#d7e1ec);color:var(--text-primary,#2c3e50);background:#f7fbff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.task-chip-status{color:var(--accent-color,#5a7d8c);background:#5a7d8c1f}.task-chip-priority{color:var(--primary-color,#3174ad);background:#3174ad1f}.task-chip-inline{border-color:var(--card-border,#d7e1ec);color:var(--text-primary,#2c3e50);background:#5a7d8c14;font-weight:600}.task-details-grid{grid-template-columns:2fr 1fr;gap:16px;margin-top:14px;display:grid}.task-card{background:var(--white,#fff);border:1px solid var(--card-border,#e0e6ed);box-shadow:var(--box-shadow,0 1px 4px #0000000f);border-radius:12px;padding:16px}.task-card-main{grid-column:1/-1}.task-sections{flex-direction:column;gap:14px;margin-top:14px;display:flex}.task-card-row{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.task-meta-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px;display:grid}.task-meta-block{border:1px solid var(--card-border,#e0e6ed);background:#f9fbfd;border-radius:10px;padding:10px 12px}.task-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary,#6b7a90);margin-bottom:4px;font-size:12px;display:block}.task-value{color:var(--text-primary,#2c3e50);word-break:break-word;font-weight:600}.task-value-stacked{flex-direction:column;gap:2px;display:flex}.task-section{margin-top:12px}.task-section h3{color:var(--text-primary,#2c3e50);margin:0 0 8px;font-size:18px}.task-body-text{color:var(--text-secondary,#6b7a90);border:1px solid var(--card-border,#e0e6ed);background:#f9fbfd;border-radius:10px;margin:0;padding:12px;line-height:1.6}.task-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.task-stats-grid{flex-direction:column;gap:12px;display:flex}.task-stat{border:1px solid var(--card-border,#e0e6ed);background:#f9fbfd;border-radius:10px;padding:12px}.task-meta-list{flex-direction:column;gap:10px;display:flex}.schedule-task-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.schedule-task-item{border:1px solid var(--card-border,#e0e6ed);background:#f9fbfd;border-radius:10px;padding:10px 12px}.schedule-task-main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.schedule-task-sub{color:var(--text-secondary,#6b7a90);word-break:break-word;margin-top:4px;font-size:12px}@media (width<=900px){.task-details-grid{grid-template-columns:1fr}.task-header-actions{flex-wrap:wrap;justify-content:flex-end}}.portal-page{justify-content:center;align-items:center;min-height:calc(100vh - 80px);display:flex}.portal-card{text-align:center;background:#fff;border-radius:12px;width:80%;max-width:420px;padding:32px;box-shadow:0 20px 40px #0000001f}.portal-card h1{margin-bottom:8px}.portal-card p{color:#4b5563;margin-bottom:20px}.portal-card button{color:#fff;cursor:pointer;background:#aab2a6;border:none;border-radius:8px;width:100%;padding:12px;font-size:15px}.portal-card button:hover{background:#8a9287}.verification-error-banner{color:#856404;text-align:left;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:8px;margin-bottom:1.5rem;padding:1rem;font-size:.9rem;line-height:1.4}.verification-error-banner strong{margin-bottom:.25rem;display:block}@media (width<=480px){.portal-card{width:94%;padding:24px}}.contractor-tasks-page{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);max-width:1400px;min-height:100vh;margin:0 auto;padding:2.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.page-header .subtitle{color:#64748b;margin:0;font-size:1rem;font-weight:500}.filters-container{background:#fff;border:1px solid #f1f5f9;border-radius:16px;flex-wrap:wrap;gap:1.25rem;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.filter-group label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.filter-group select{color:#1e293b;cursor:pointer;background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;padding:.75rem 1rem;font-size:.9375rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.filter-group select:focus{background:#fff;border-color:#3b82f6;outline:none;box-shadow:0 0 0 4px #3b82f61a}.filter-group select:disabled{cursor:not-allowed;opacity:.6;background:#f1f5f9}.checkbox-filter{justify-content:flex-end}.checkbox-filter label{cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.checkbox-filter input[type=checkbox]{cursor:pointer;width:18px;height:18px}.tasks-summary{background:var(--background-color,#f8f9fa);border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem}.task-count{color:var(--text-primary,#333);font-weight:500}.no-tasks-message{text-align:center;background:#fff;border:1px solid #f1f5f9;border-radius:16px;padding:5rem 2rem;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.no-tasks-message p{color:#94a3b8;margin:0;font-size:1.125rem;font-weight:500}.tasks-grouped-container{flex-direction:column;gap:2rem;display:flex}.project-group{background:#fff;border:1px solid #f1f5f9;border-radius:16px;overflow:hidden;box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000006}.project-header{background:linear-gradient(135deg,#aab2a6 0%,#94a091 100%);padding:1.25rem 1.5rem}.project-header h2{color:#fff;letter-spacing:-.25px;margin:0;font-size:1.375rem;font-weight:700}.lot-group{border-bottom:1px solid #f1f5f9}.lot-group:last-child{border-bottom:none}.lot-header{background:#f8fafc;border-bottom:2px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.lot-header h3{color:#1e293b;margin:0;font-size:1.125rem;font-weight:700}.task-count-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#aab2a6 0%,#94a091 100%);border-radius:20px;padding:.375rem .875rem;font-size:.75rem;font-weight:700}.tasks-table-container{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.tasks-table{border-collapse:separate;border-spacing:0;width:100%;min-width:900px}.tasks-table thead{display:table-header-group}.tasks-table tbody{display:table-row-group}.tasks-table tr{display:table-row}.tasks-table th,.tasks-table td{display:table-cell}.tasks-table th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.75px;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:1.25rem 1.5rem;font-size:.75rem;font-weight:700}.tasks-table td{color:#334155;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:1.25rem 1.5rem;font-size:.9375rem}.tasks-table tbody tr:last-child td{border-bottom:none}.task-row.clickable{cursor:pointer;background:#fff;transition:background-color .2s}.task-row.clickable:hover{background-color:#f8fafc}.task-title{color:#1e293b;font-weight:600}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:.375rem .875rem;font-size:.75rem;font-weight:700;display:inline-block}.status-todo{color:#1e40af;background:#dbeafe}.status-in-progress{color:#c2410c;background:#fed7aa}.status-completed{color:#065f46;background:#d1fae5}.status-on-hold{color:#9f1239;background:#fce7f3}.status-cancelled{color:#64748b;background:#f1f5f9}.priority-badge{letter-spacing:.5px;border-radius:20px;padding:.375rem .875rem;font-size:.75rem;font-weight:700;display:inline-block}.priority-very-low{color:#6b21a8;background:#f3e8ff}.priority-low{color:#065f46;background:#d1fae5}.priority-medium{color:#92400e;background:#fef3c7}.priority-high{color:#991b1b;background:#fee2e2}.priority-very-high{color:#7f1d1d;background:#fecaca}.progress-cell{align-items:center;gap:.75rem;display:flex}.progress-bar-container{background:#e2e8f0;border-radius:4px;width:80px;height:8px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,#aab2a6 0%,#8a9481 100%);border-radius:4px;height:100%;transition:width .3s}.progress-text{color:#64748b;font-feature-settings:"tnum";min-width:40px;font-size:.8125rem;font-weight:600}.loading-container,.error-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:5rem 2rem;display:flex}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#aab2a6;border-radius:50%;width:48px;height:48px;margin-bottom:1.5rem;animation:1s linear infinite spin}.loading-container p{color:#64748b;font-size:1rem;font-weight:500}.error-message{color:#dc2626;margin-bottom:1.5rem;font-size:1rem;font-weight:500}.error-container button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#aab2a6 0%,#94a091 100%);border:none;border-radius:10px;padding:.75rem 2rem;font-size:.9375rem;font-weight:600;transition:all .2s;box-shadow:0 4px 6px -1px #0000001a}.error-container button:hover{transform:translateY(-1px);box-shadow:0 6px 8px -1px #00000026}@media (width<=1024px){.filters-container{gap:1rem}.filter-group{flex:calc(50% - .5rem);min-width:180px}}@media (width<=768px){.contractor-tasks-page{background:#f8f9fa;padding:1.25rem}.page-header{margin-bottom:1.5rem;padding-bottom:1rem}.page-header h1{font-size:1.75rem}.page-header .subtitle{font-size:.875rem}.filters-container{flex-direction:column;gap:1rem;padding:1.25rem}.filter-group{width:100%;min-width:unset}.filter-group select{width:100%}.project-header{padding:1rem 1.25rem}.project-header h2{font-size:1.125rem}.lot-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem}.lot-header h3{font-size:1rem}.tasks-table-container{overflow-x:visible}.tasks-table{min-width:unset}.tasks-table thead{display:none}.tasks-table,.tasks-table tbody,.tasks-table tr,.tasks-table td{width:100%;display:block}.tasks-table tr{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 4px #0000000a}.tasks-table td{text-align:right;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.tasks-table td:first-child{color:#1e293b;background:#f8fafc;font-weight:700}.tasks-table td:last-child{background:#f8fafc;border-bottom:none}.tasks-table td:before{content:attr(data-label);color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;text-align:left;flex-shrink:0;margin-right:1rem;font-size:.6875rem;font-weight:700}.task-title{text-align:right;color:#1e293b;font-weight:700;display:block}.progress-cell{justify-content:flex-end}.progress-bar-container{width:100px}}@media (width<=480px){.contractor-tasks-page{padding:1rem}.page-header h1{font-size:1.5rem}.filters-container{padding:1rem}.project-group{border-radius:12px}.project-header{padding:.875rem 1rem}.project-header h2{font-size:1rem}.lot-header{padding:.875rem 1rem}.lot-header h3{font-size:.9375rem}.tasks-table td{padding:.875rem 1rem;font-size:.875rem}.task-count-badge{padding:.25rem .625rem;font-size:.6875rem}.progress-bar-container{width:80px}.progress-text{font-size:.75rem}}:root{--accent-1:#5a7d8c}.profile-page{max-width:800px;margin:0 auto;padding:24px}.profile-header{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;display:flex}.profile-header h1{color:#111827;margin:0;font-size:28px}.edit-button{background-color:var(--accent-1);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background-color .2s}.edit-button:hover{background-color:#aab2a6}.profile-content{background-color:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a}.profile-section h2{color:#374151;margin-top:0;margin-bottom:24px;font-size:20px}.profile-field{margin-bottom:24px}.profile-field label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.profile-value{color:#111827;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;align-items:center;min-height:40px;padding:10px 12px;font-size:14px;display:flex}.profile-value-readonly{color:#6b7280;background-color:#f3f4f6}.profile-input{color:#111827;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .2s}.profile-input:focus{border-color:#aab2a6;outline:none;box-shadow:0 0 0 3px #aab2a626}.field-note{color:#6b7280;margin-top:4px;font-size:12px;display:block}.profile-actions{border-top:1px solid #e5e7eb;gap:12px;margin-top:32px;padding-top:24px;display:flex}.save-button{cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:500;transition:background-color .2s;color:#fff!important;background-color:#aab2a6!important}.save-button:hover:not(:disabled){background-color:#8a9287!important}.save-button:disabled{cursor:not-allowed;background-color:#9ca3af!important}.cancel-button{cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:500;transition:background-color .2s;color:#1f2937!important;background-color:#e5e7eb!important}.cancel-button:hover:not(:disabled){background-color:#d1d5db!important}.cancel-button:disabled{cursor:not-allowed;background-color:#9ca3af!important}.profile-page .error{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:16px;padding:12px}.save-error-message{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:16px;padding:12px;font-size:14px}.quote-list-page{color:#0f172a;background:#f8fafc;min-height:100vh;padding:40px 32px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.quote-list-container{background:#fff;border:1px solid #e2e8f0;border-radius:14px;max-width:1200px;margin:0 auto;padding:32px;position:relative;box-shadow:0 4px 16px #0000000d}.quote-list-container:before{content:"";background:linear-gradient(90deg,#1e293b 0%,#334155 60%,#1e293b 100%);border-top-left-radius:14px;border-top-right-radius:14px;height:6px;position:absolute;top:0;left:0;right:0}.page-header{border-bottom:2px solid #0000000d;justify-content:space-between;align-items:flex-end;margin-bottom:32px;padding-bottom:24px;display:flex}.header-right h1{color:#0f172a;letter-spacing:-.5px;margin:0;font-size:32px;font-weight:800}.project-selector-wrapper{flex-direction:column;gap:8px;display:flex}.project-selector-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}.project-selector{color:#0f172a;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;min-width:280px;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s}.project-selector:hover{border-color:#cbd5e1}.project-selector:focus{border-color:#334155;outline:none;box-shadow:0 0 0 3px #33415514}.actions-bar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.search-container{flex:1;max-width:400px;position:relative}.search-icon{color:#94a3b8;font-size:18px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input{color:#0f172a;background:#fff;border:2px solid #e2e8f0;border-radius:8px;width:100%;padding:12px 16px 12px 42px;font-family:inherit;font-size:14px;transition:all .2s}.search-input:focus{border-color:#334155;outline:none;box-shadow:0 0 0 3px #33415514}.search-input::placeholder{color:#cbd5e1}.btn-create{color:#fff;background:#0f172a;box-shadow:0 4px 12px #0f172a26}.btn-create:hover{background:#1e293b;transform:translateY(-1px);box-shadow:0 6px 16px #0f172a33}.btn-primary{color:#fff;background:#0f172a}.btn-view,.btn-send{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px 16px;font-size:13px}.btn-view:hover,.btn-send:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.quotes-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.quotes-table{border-collapse:collapse;width:100%}.quotes-table th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.5px;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:16px 24px;font-size:12px;font-weight:700}.quotes-table td{vertical-align:middle;color:#334155;border-bottom:1px solid #f1f5f9;padding:20px 24px;font-size:14px}.bill-number{color:#0f172a;letter-spacing:-.5px;font-family:Courier New,Courier,monospace;font-size:15px;font-weight:700}.status-pill{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex}.status-owner-approved,.status-customer-approved{color:#047857;background:#ecfdf5;border:1px solid #6ee7b7}.col-amount{color:#0f172a;font-weight:600}.col-date{color:#64748b}.col-date .time{color:#94a3b8;margin-left:6px;font-size:12px}.action-buttons{gap:8px;display:flex}.empty-state{text-align:center;background:#fff;border:2px dashed #e2e8f0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon{color:#cbd5e1;margin-bottom:20px;font-size:48px}.empty-state h3{color:#0f172a;margin:0 0 8px;font-size:18px;font-weight:700}.empty-state p{color:#64748b;margin:0 0 24px;font-size:14px}.error-container{text-align:center;max-width:400px;margin:0 auto;padding:60px}.error-icon{margin-bottom:16px;font-size:48px}@media (width<=768px){.quote-list-page{padding:16px 12px}.quote-list-container{padding:20px 16px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.actions-bar{flex-direction:column;align-items:stretch}.search-container{max-width:100%}.btn-create{width:100%}.quotes-table th,.quotes-table td{padding:12px 16px}.quotes-table-wrapper{overflow-x:auto}}.quote-form-page{background:#f8fafc;min-height:100vh;padding:40px 32px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.quote-form-container{background:#fff;border:1px solid #e2e8f0;border-radius:14px;max-width:1200px;margin:0 auto;padding:48px;position:relative;box-shadow:0 4px 16px #0000000d}.quote-form-container:before{content:"";background:linear-gradient(90deg,#1e293b 0%,#334155 60%,#1e293b 100%);border-top-left-radius:14px;border-top-right-radius:14px;height:6px;position:absolute;top:0;left:0;right:0}.form-body-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:28px;display:grid}.form-main{min-width:0}.form-sidebar{flex-direction:column;gap:16px;display:flex;position:sticky;top:24px}.summary-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:18px;box-shadow:0 6px 16px #0f172a08}.summary-card h3{color:#0f172a;margin:0 0 12px;font-size:16px;font-weight:800}.summary-row{color:#475569;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;display:flex}.summary-row strong{color:#0f172a;text-align:right;font-weight:700}.summary-divider{background:#e2e8f0;height:1px;margin:10px 0}.form-header{border-bottom:2px solid #0000000d;justify-content:space-between;align-items:flex-start;margin-bottom:44px;padding-bottom:28px;display:flex}.header-left h1{color:#0f172a;letter-spacing:-.5px;margin:0 0 8px;font-size:36px;font-weight:800}.bill-number-label{color:#64748b;text-transform:uppercase;letter-spacing:1px;margin:0;font-size:13px;font-weight:600}.bill-number-value{color:#334155;letter-spacing:-.3px;font-size:16px;font-weight:700}.contractor-card{color:#fff;background:#1e293b;border-radius:12px;gap:18px;min-width:340px;padding:28px;display:flex;box-shadow:0 4px 12px #0000001a}.contractor-avatar{background:#334155;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;font-weight:700;display:flex;box-shadow:0 4px 8px #0000001a}.contractor-details h3{letter-spacing:-.3px;margin:0 0 6px;font-size:18px;font-weight:700}.contractor-details p{opacity:.85;color:#e2e8f0;margin:0;font-size:14px;font-weight:500}.contractor-details .address{opacity:.8;color:#cbd5e1;margin-top:10px;font-size:13px;font-weight:400;line-height:1.6}.bill-details-section{margin-bottom:40px}.details-grid{grid-template-columns:repeat(2,1fr);gap:36px;display:grid}.details-grid-3{grid-template-columns:repeat(3,1fr);gap:24px}.detail-item label{color:#64748b;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:11px;font-weight:700;display:block}.detail-value{color:#0f172a;letter-spacing:-.3px;margin:0 0 8px;font-size:16px;font-weight:700}.detail-meta{color:#94a3b8;margin:4px 0;font-size:13px;font-weight:500;display:block}.error-banner{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;margin-bottom:28px;padding:16px 18px;font-size:14px;font-weight:600}.section-heading{color:#0f172a;letter-spacing:-.3px;border-bottom:2px solid #e2e8f0;margin:0 0 20px;padding-bottom:12px;font-size:18px;font-weight:800}.customer-info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:20px;padding:24px;display:flex}.customer-info-card.placeholder{color:#94a3b8;justify-content:center;align-items:center;min-height:120px;font-weight:500}.customer-avatar{color:#fff;background:#475569;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:24px;font-weight:700;display:flex;box-shadow:0 4px 12px #0000001a}.customer-details h3{color:#0f172a;margin:0 0 8px;font-size:17px;font-weight:700}.customer-details .email-phone{color:#64748b;flex-direction:column;gap:4px;margin-bottom:10px;font-size:14px;font-weight:500;display:flex}.customer-details .address{color:#94a3b8;font-size:13px;font-weight:400;line-height:1.6}.form-fields-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:40px;padding:28px}.form-grid{gap:24px;margin-bottom:24px;display:grid}.form-grid-2{grid-template-columns:repeat(2,1fr)}.form-group label{color:#0f172a;text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:700}.form-input,.form-textarea,.form-select{color:#0f172a;background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:12px 14px;font-family:inherit;font-size:14px;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-input:hover,.form-textarea:hover,.form-select:hover{border-color:#cbd5e1}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:#334155;outline:none;box-shadow:0 0 0 3px #33415514}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.form-input::placeholder,.form-textarea::placeholder{color:#cbd5e1}.item-details-section{margin-bottom:40px}.item-details-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.item-details-title{flex-direction:column;gap:6px;display:flex}.add-item-button{border-radius:10px;align-items:center;gap:6px;padding:10px 14px;font-weight:700;display:inline-flex}.item-summary{color:#334155;text-transform:uppercase;letter-spacing:.4px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.item-details-section h3{color:#0f172a;letter-spacing:-.5px;margin:0 0 6px;font-size:20px;font-weight:800}.section-subtitle{color:#64748b;margin:0 0 24px;font-size:14px;font-weight:500}.items-table-wrapper{border:1px solid #e2e8f0;border-radius:10px;margin-bottom:16px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.items-table{border-collapse:collapse;width:100%}.items-table thead{background:#f8fafc}.items-table th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0;padding:14px 16px;font-size:12px;font-weight:700}.items-table th.col-rate,.items-table th.col-total{text-align:right}.items-table tbody tr{border-bottom:1px solid #f1f5f9}.items-table tbody tr:last-child{border-bottom:none}.items-table tbody tr.row-error{background:#fffbf5}.items-table td{vertical-align:top;padding:16px}.col-item{width:40%}.col-amount{width:15%}.col-rate{width:20%}.col-total{width:15%}.col-actions{text-align:center;width:10%}.items-table input{background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:all .2s}.items-table input:focus{border-color:#334155;outline:none;box-shadow:0 0 0 3px #33415514}.items-table input.input-error{background:#fef2f2;border-color:#ef4444}.items-table input::placeholder{color:#cbd5e1}.rate-input{align-items:center;display:flex;position:relative}.rate-input .currency{color:#94a3b8;pointer-events:none;font-size:14px;font-weight:600;position:absolute;left:12px}.rate-input input{text-align:right;padding-left:28px}.total-value{color:#0f172a;font-size:15px;font-weight:600;display:inline-block}.error-hint{color:#ef4444;margin-top:4px;font-size:11px;display:block}.btn-delete{cursor:pointer;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:all .2s;display:flex}.btn-delete:hover:not(:disabled){color:#dc2626;background:#f1f5f9;border-color:#cbd5e1}.btn-delete:disabled{opacity:.4;cursor:not-allowed}.add-item-link{color:#334155;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 0;font-size:15px;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.add-item-link:hover{color:#0f172a}.add-item-link svg{font-size:18px}.totals-section{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;width:100%;margin-bottom:0;padding:22px;box-shadow:0 8px 18px #00000008}.totals-row{border-bottom:1px solid #e2e8f0;grid-template-columns:1fr auto;align-items:center;padding:14px 0;font-size:15px;display:grid}.totals-row:last-child{border-bottom:none}.totals-row.discount-row,.totals-row.tax-row{grid-template-columns:1fr auto auto;gap:12px}.totals-row.totals-total{border-top:2px solid #e2e8f0;margin-top:12px;padding-top:16px;font-size:18px;font-weight:800}.totals-label{color:#64748b;font-weight:600}.totals-value{color:#0f172a;text-align:right;font-weight:700}.totals-input-group{align-items:center;gap:8px;display:flex}.totals-input{text-align:center;color:#0f172a;border:1px solid #e2e8f0;border-radius:6px;width:60px;padding:8px 10px;font-size:13px;font-weight:600}.totals-input:focus{border-color:#334155;outline:none;box-shadow:0 0 0 3px #33415514}.input-with-symbol{align-items:center;display:flex;position:relative}.currency{color:#94a3b8;pointer-events:none;font-weight:600;position:absolute;left:12px}.input-with-symbol .form-input{padding-left:32px}.input-number,.amount-cell{text-align:right}.amount{color:#0f172a;font-size:15px;font-weight:700}.error-text{color:#dc2626;margin-top:4px;font-size:12px;font-weight:500;display:block}.items-table td input.error{background:#fef2f2;border-color:#fca5a5}.form-actions{border-top:2px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;margin-top:40px;padding-top:28px;display:flex}.form-actions-right{gap:12px;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-family:inherit;font-size:15px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-secondary:hover:not(:disabled){color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.btn-primary{color:#fff;background:#0f172a;box-shadow:0 4px 12px #0f172a33}.btn-primary:hover:not(:disabled){background:#1e293b;transform:translateY(-2px);box-shadow:0 6px 16px #0f172a4d}.btn-preview{color:#334155;background:#f8fafc;border:1px solid #e2e8f0}.btn-preview:hover:not(:disabled){color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.btn-icon{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;padding:8px 12px;font-size:16px}.btn-icon:hover:not(:disabled){color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.btn-icon.btn-danger{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.btn-icon.btn-danger:hover:not(:disabled){color:#b91c1c;background:#fee2e2;border-color:#f87171}.btn-sm{padding:8px 16px;font-size:13px}.preview-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.3s ease-in-out fadeIn;display:flex;position:fixed;inset:0}.preview-modal{background:#fff;border-radius:14px;flex-direction:column;width:100%;max-width:600px;max-height:85vh;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;display:flex;box-shadow:0 20px 60px #0003}.preview-header{border-bottom:2px solid #e2e8f0;justify-content:space-between;align-items:center;padding:24px;display:flex}.preview-header h2{color:#0f172a;margin:0;font-size:24px;font-weight:700}.preview-close{cursor:pointer;color:#64748b;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;font-size:24px;transition:color .2s;display:flex}.preview-close:hover{color:#0f172a}.preview-content{flex:1;padding:28px;overflow-y:auto}.preview-section{border-bottom:1px solid #e2e8f0;margin-bottom:28px;padding-bottom:28px}.preview-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.preview-section h3{color:#0f172a;margin:0 0 16px;font-size:16px;font-weight:700}.preview-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.preview-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:11px;font-weight:700}.preview-value{color:#0f172a;font-size:16px;font-weight:700}.preview-meta{color:#94a3b8;margin-top:4px;font-size:13px}.preview-amount{color:#0f172a;font-size:18px}.preview-table{border-collapse:collapse;width:100%;font-size:14px}.preview-table th{text-align:left;color:#0f172a;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:12px;font-weight:700}.preview-table td{color:#64748b;border-bottom:1px solid #e2e8f0;padding:12px}.preview-totals{background:#f8fafc;border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.preview-total-row{color:#64748b;justify-content:space-between;font-size:14px;font-weight:600;display:flex}.preview-total-row.preview-total{color:#0f172a;border-top:2px solid #e2e8f0;padding-top:12px;font-size:16px;font-weight:700}.preview-total-row.preview-total span:last-child{color:#0f172a}@media (width<=1024px){.quote-form-page{padding:24px 16px}.quote-form-container{border-radius:10px;padding:28px 20px}.form-header{flex-direction:column;gap:20px}.form-body-grid{grid-template-columns:1fr;gap:20px}.form-sidebar{position:static}.contractor-card{flex-direction:row;min-width:100%}.details-grid{grid-template-columns:1fr;gap:20px}.form-grid-2{grid-template-columns:1fr}.items-table th,.items-table td{padding:12px;font-size:13px}.col-item,.col-amount,.col-rate,.col-total,.col-actions{width:auto}.totals-section{width:100%;max-width:100%}}.modal-backdrop{z-index:1000;background-color:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:100%;max-width:520px;padding:24px;box-shadow:0 20px 50px #00000040}.modal h2{color:#0f172a;margin:0 0 12px;font-size:20px;font-weight:700}.modal p{color:#475569;margin-bottom:16px;font-size:14px;line-height:1.5}.modal-actions{justify-content:flex-end;display:flex}.modal-actions button{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;padding:10px 18px;font-weight:600;transition:transform .2s,box-shadow .2s}.modal-actions button:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0f172a4d}@media (width<=768px){.quote-form-page{min-height:auto;padding:12px 8px}.quote-form-container{border-radius:8px;max-width:100%;padding:16px 12px}.quote-form-container:before{height:4px}.form-header{flex-direction:column;gap:16px;margin-bottom:28px;padding-bottom:16px}.header-left h1{margin-bottom:6px;font-size:20px}.bill-number-value{font-size:14px}.contractor-card{text-align:center;flex-direction:column;align-items:center;gap:12px;min-width:auto;padding:16px}.contractor-info{text-align:center;width:100%}.contractor-info h3{font-size:16px}.contractor-info p{font-size:12px}.contractor-avatar{align-self:center;width:48px;height:48px;font-size:20px}.details-grid{grid-template-columns:1fr;gap:16px}.form-grid{gap:16px}.form-grid-2{grid-template-columns:1fr}.form-group label{font-size:12px}.form-input,.form-textarea,.form-select{padding:10px 12px;font-size:14px}.form-textarea{min-height:80px}.item-details-section{margin-bottom:24px}.item-details-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:12px}.item-details-title h3{font-size:16px}.add-item-button{justify-content:center;width:100%}.items-table-wrapper{border:none;margin-bottom:12px;overflow:visible}.items-table{flex-direction:column;gap:12px;display:flex}.items-table thead{display:none}.items-table tbody{flex-direction:column;gap:12px;display:flex}.items-table tbody tr{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex}.items-table tbody tr.row-error{background:#fffbf5;border-color:#fca5a5}.items-table td{flex-direction:column;gap:4px;width:100%;padding:0;display:flex}.items-table td:before{content:attr(data-label);color:#64748b;text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:700;display:block}.col-item:before{content:"Description"}.col-amount:before{content:"Hours"}.col-rate:before{content:"Rate"}.col-total:before{content:"Total"}.col-actions:before{content:"Actions"}.col-actions{text-align:center}.items-table input{width:100%;padding:8px 10px;font-size:13px}.rate-input{width:100%}.rate-input input{text-align:left;padding-left:24px}.rate-input .currency{font-size:12px;left:10px}.btn-delete{width:100%;height:auto;padding:8px;font-size:16px}.total-value{font-size:14px}.error-hint{font-size:11px}.totals-section{border-radius:8px;gap:0;width:100%;margin-bottom:0;padding:16px}.summary-card{border-radius:8px;padding:14px}.summary-card h3{margin-bottom:10px;font-size:14px}.summary-row{padding:6px 0;font-size:12px}.summary-row strong{font-size:12px}.totals-row{padding:12px 0;font-size:13px}.totals-label{font-size:12px}.totals-value{font-size:13px}.totals-row.totals-total{font-size:16px}.totals-input{width:50px;padding:6px 8px;font-size:11px}.form-actions{flex-direction:column-reverse;gap:10px;margin-top:24px;padding-top:16px}.form-actions-right{flex-direction:column;gap:10px;width:100%}.btn{border-radius:6px;width:100%;padding:10px 16px;font-size:13px}.btn-secondary{color:#64748b;background:#f8fafc}.preview-modal-overlay{padding:12px}.preview-modal{border-radius:10px;max-width:100%;max-height:90vh}.preview-header{padding:16px}.preview-header h2{font-size:18px}.preview-content{padding:16px}.preview-grid{grid-template-columns:1fr;gap:12px}.preview-label{font-size:10px}.preview-value{font-size:14px}.preview-table{font-size:12px}.preview-table th,.preview-table td{padding:8px}.modal{border-radius:10px;max-width:90%;padding:16px}.modal h2{font-size:16px}.modal p{font-size:13px}.modal-actions button{padding:8px 14px;font-size:12px}}@media (width<=480px){.quote-form-page{padding:8px 4px}.quote-form-container{border-radius:6px;padding:12px 8px}.header-left h1{font-size:18px}.contractor-card{padding:12px}.contractor-avatar{width:40px;height:40px;font-size:18px}.contractor-info h3{font-size:14px}.contractor-info p{font-size:11px}.form-input,.form-textarea,.form-select{padding:8px 10px;font-size:13px}.items-table input{padding:6px 8px;font-size:12px}.btn{padding:8px 12px;font-size:12px}.summary-card h3{font-size:12px}.totals-row{padding:10px 0;font-size:12px}.totals-input{width:45px;padding:4px 6px;font-size:11px}}.quote-detail-page{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);min-height:100vh;padding:40px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.quote-detail-container{background:#fff;border:1px solid #0000000d;border-radius:16px;max-width:1000px;margin:0 auto;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.detail-header{background:#fff;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:24px 32px;display:flex}.btn-back{color:#64748b;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.btn-back:hover{color:#1e293b;background:#f8fafc;border-color:#cbd5e1}.detail-actions{gap:12px;display:flex}.btn-secondary{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.quote-header-section{background:#fff;border-bottom:1px solid #f1f5f9;padding:32px}.quote-title{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.quote-title h1{color:#1e293b;letter-spacing:-.5px;margin:0;font-size:28px;font-weight:800}.quote-number{color:#64748b;background:#f1f5f9;border-radius:6px;padding:8px 12px;font-size:16px;font-weight:600}.quote-meta{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;display:grid}.meta-item{flex-direction:column;gap:4px;display:flex}.meta-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.meta-value{color:#1e293b;font-size:16px;font-weight:600}.status-pill{text-transform:uppercase;letter-spacing:.5px;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.status-pending-owner{color:#c2410c;background:#fff7ed;border:1px solid #ffedd5}.status-owner-approved,.status-approved{color:#15803d;background:#f0fdf4;border:1px solid #dcfce7}.status-rejected{color:#b91c1c;background:#fef2f2;border:1px solid #fee2e2}.status-estimated{color:#475569;background:#f8fafc;border:1px solid #e2e8f0}.quote-party-section{background:#fcfcfc;border-bottom:1px solid #f1f5f9;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;padding:32px;display:grid}.party-card{background:0 0}.party-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.party-card h3{color:#1e293b;margin:0 0 4px;font-size:18px;font-weight:600}.party-card p{color:#64748b;margin:0;font-size:14px;line-height:1.5}.quote-items-section{border-bottom:1px solid #f1f5f9;padding:32px}.quote-items-section h2{color:#1e293b;margin-bottom:20px;font-size:18px;font-weight:700}.items-table{border-collapse:separate;border-spacing:0;width:100%}.items-table thead th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0;padding:12px 16px;font-size:12px;font-weight:600}.items-table thead th.text-center{text-align:center}.items-table thead th.text-right{text-align:right}.items-table tbody td{color:#334155;border-bottom:1px solid #f1f5f9;padding:16px;font-size:14px}.items-table tbody tr:last-child td{border-bottom:none}.items-table tbody td.text-center{text-align:center}.items-table tbody td.text-right{text-align:right}.quote-totals-section{background:#f8fafc;border-top:1px solid #f1f5f9;padding:32px}.totals-row{justify-content:space-between;align-items:center;max-width:400px;margin-left:auto;padding:8px 0;display:flex}.totals-label{color:#64748b;font-size:14px;font-weight:500}.totals-value{color:#1e293b;font-size:14px;font-weight:600}.totals-total{border-top:2px solid #e2e8f0;margin-top:16px;padding-top:16px}.totals-total .totals-label{color:#1e293b;font-size:16px;font-weight:700}.totals-total .totals-value{color:#0f172a;font-size:20px;font-weight:800}.quote-notes-section{border-top:1px solid #f1f5f9;padding:32px}.quote-notes-section h3{color:#1e293b;margin-bottom:12px;font-size:16px;font-weight:600}.quote-notes-section p{color:#475569;background:#f1f5f9;border-radius:8px;margin:0;padding:16px;font-size:14px;line-height:1.6}.approval-status-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:32px;padding:24px}.approval-status-section.status-approved{background:#f0fdf4;border-color:#bbf7d0}.approval-status-section.status-rejected{background:#fef2f2;border-color:#fecaca}.approval-status-section h3{color:#1e293b;margin-top:0;margin-bottom:16px;font-size:16px}.loading-container,.error-container,.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}@media print{.quote-detail-page{background:#fff;padding:0}.quote-detail-container{box-shadow:none;border:none;max-width:100%}.detail-header,.btn-back{display:none}.quote-items-section,.quote-totals-section,.quote-party-section{padding:16px}}@media (width<=768px){.quote-detail-page{padding:16px}.quote-header-section,.quote-party-section,.quote-items-section,.quote-totals-section{padding:20px}.quote-title{flex-direction:column;align-items:flex-start;gap:12px}.detail-header{padding:16px 20px}}.approval-modal-overlay{z-index:1000;backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.approval-modal{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:450px;max-height:90vh;animation:.2s ease-out scaleIn;display:flex;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.close-button:hover:not(:disabled){color:#64748b;background-color:#f1f5f9}.approval-modal .modal-content{padding:16px 20px;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;width:auto!important;max-width:none!important}.quote-summary{background:0 0;border:none;margin-bottom:16px;padding:0}.summary-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.summary-row:last-child{margin-bottom:0}.summary-row .label{color:#64748b;font-size:13px;font-weight:500}.reason-section label{color:#334155;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.required{color:#ef4444;margin-left:4px}.reason-textarea{color:#1e293b;resize:none;border:1px solid #cbd5e1;border-radius:6px;width:100%;height:80px;min-height:80px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s}.confirmation-message{border-radius:6px;margin-bottom:0;padding:12px 16px;font-size:14px;line-height:1.5}.modal-footer{background:#fcfcfc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.btn{cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;min-width:80px;padding:10px 16px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-secondary{color:#475569;background:#fff;border:1px solid #cbd5e1}.btn-secondary:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.btn-approve:hover:not(:disabled){background:#059669}.btn-reject:hover:not(:disabled){background:#dc2626}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=480px){.approval-modal{max-width:100%;margin:10px}.modal-footer{flex-direction:column-reverse}.btn{width:100%}}.approval-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.modal-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{color:#0f172a;margin:0;font-size:20px;font-weight:700}.close-button{color:#64748b;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:24px;transition:color .2s;display:flex}.close-button:hover:not(:disabled){color:#1e293b}.close-button:disabled{cursor:not-allowed;opacity:.5}.approval-modal .modal-content{flex:1;padding:24px;overflow-y:auto}.quote-summary{background:0 0;border-radius:0;margin-bottom:24px;padding:0}.summary-row{justify-content:space-between;align-items:center;padding:8px 0;display:flex}.summary-row:not(:last-child){border-bottom:1px solid #e2e8f0;margin-bottom:8px;padding-bottom:8px}.summary-row .label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.summary-row .value{color:#1e293b;font-size:14px;font-weight:700}.reason-section{margin-bottom:24px}.reason-section label{color:#334155;align-items:center;gap:4px;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.required{color:#ef4444}.reason-textarea{color:#1e293b;resize:vertical;border:1px solid #cbd5e1;border-radius:6px;width:100%;padding:12px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:14px;transition:all .2s}.reason-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.reason-textarea:disabled{cursor:not-allowed;opacity:.6;background:#f1f5f9}.character-count{color:#94a3b8;text-align:right;margin-top:4px;font-size:12px}.confirmation-message{border-radius:0;margin-bottom:16px;padding:0}.confirmation-message.approve{color:#065f46;background:0 0;border:none}.confirmation-message.approve p{color:#059669;font-weight:600}.confirmation-message.reject{color:#991b1b;background:0 0;border:none}.confirmation-message.reject p{color:#dc2626;font-weight:600}.confirmation-message p{margin:0;font-size:14px;line-height:1.5}.modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;flex-shrink:0;gap:12px;padding:16px 20px;display:flex}.btn{cursor:pointer;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:#334155;background:#e2e8f0}.btn-secondary:hover:not(:disabled){background:#cbd5e1}.btn-approve{color:#fff;background:#10b981}.btn-approve:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-reject{color:#fff;background:#ef4444}.btn-reject:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:1s linear infinite spin;display:inline-block}@media (width<=480px){.approval-modal{max-width:100%}.modal-header,.modal-content,.modal-footer{padding:16px}.modal-header h2{font-size:18px}.modal-footer{flex-direction:column}.btn{width:100%}}.quote-detail-modal-overlay{z-index:1000;backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.quote-detail-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:800px;max-height:90vh;animation:.2s ease-out scaleIn;display:flex;overflow:hidden;box-shadow:0 10px 25px #00000026}.quote-detail-modal .modal-header{background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.quote-detail-modal .modal-header h2{color:#0f172a;margin:0;font-size:20px;font-weight:700}.close-button{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;font-size:24px;transition:all .2s;display:flex}.close-button:hover{color:#64748b;background-color:#f1f5f9}.quote-detail-modal .quote-modal-content{flex-direction:column;flex:1;gap:24px;padding:32px;display:flex;overflow-y:auto}.quote-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;display:grid}.header-item{flex-direction:column;gap:4px;display:flex}.header-item .label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.header-item .value{color:#0f172a;font-size:16px;font-weight:600}.header-item .value.amount{color:#059669;font-size:18px}.status-badge{text-transform:uppercase;border-radius:9999px;width:fit-content;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.status-badge.status-submitted{color:#b45309;background:#fef3c7}.status-badge.status-approved{color:#065f46;background:#d1fae5}.status-badge.status-rejected{color:#991b1b;background:#fee2e2}.info-section h3,.line-items-section h3,.approval-info h3{color:#0f172a;margin:0 0 12px;font-size:14px;font-weight:700}.info-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;padding:8px 0;display:flex}.info-row:last-child{border-bottom:none}.info-row .label{color:#64748b;font-size:14px}.info-row .value{color:#334155;text-align:right;font-weight:500}.line-items-table{border-collapse:collapse;width:100%}.line-items-table th{text-align:left;color:#64748b;text-transform:uppercase;border-bottom:2px solid #e2e8f0;padding:10px 8px;font-size:12px;font-weight:600}.line-items-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:12px 8px;font-size:14px}.line-items-table tr:last-child td{border-bottom:none}.approval-info{border-top:1px solid #e2e8f0;margin-top:8px;padding:16px 0}.approval-info h3{margin-bottom:8px;font-size:14px}.approval-info.approved .value{color:#059669}.approval-info.rejected .value{color:#dc2626}.loading-container{color:#64748b;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.spinner{border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;width:32px;height:32px;margin-bottom:16px;animation:1s linear infinite spin}.error-message{color:#991b1b;text-align:center;background:#fee2e2;border-radius:8px;padding:16px}@media (width<=640px){.quote-detail-modal{border-radius:0;max-width:100%;max-height:100vh}.quote-header{grid-template-columns:1fr 1fr;gap:16px}.line-items-table{display:block;overflow-x:auto}.quote-modal-content{padding:16px}}.notification-modal-overlay{z-index:2000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.notification-modal{text-align:center;background:#fff;border-radius:12px;width:100%;max-width:400px;padding:32px 24px 24px;animation:.3s ease-out slideUp;position:relative;box-shadow:0 10px 25px #00000026}.close-button-absolute{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;font-size:20px;transition:all .2s;display:flex;position:absolute;top:12px;right:12px}.close-button-absolute:hover{color:#64748b;background-color:#f1f5f9}.notification-content{flex-direction:column;align-items:center;gap:16px;display:flex}.notification-icon{font-size:48px}.notification-icon.success{color:#10b981}.notification-icon.error{color:#ef4444}.notification-icon.info{color:#3b82f6}.notification-title{margin:0;font-size:20px;font-weight:700}.notification-title.success{color:#065f46}.notification-title.error{color:#991b1b}.notification-title.info{color:#1e40af}.notification-message{color:#475569;margin:0 0 8px;font-size:15px;line-height:1.5}.btn-primary{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:6px;min-width:120px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .2s}.btn-primary:hover{background:#0f172a;transform:translateY(-1px)}.quote-approval-page{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);max-width:1400px;min-height:100vh;margin:0 auto;padding:40px 32px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.page-header{border-bottom:2px solid #0000000d;margin-bottom:40px;padding-bottom:24px}.page-header h1{color:#1e293b;letter-spacing:-1px;margin:0 0 12px;font-size:36px;font-weight:800}.page-header p{color:#64748b;margin:0;font-size:16px;font-weight:500}.filters-section{background:#fff;border-radius:16px;flex-wrap:wrap;align-items:flex-end;gap:20px;width:100%;margin-bottom:32px;padding:24px;display:flex;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.filter-group{flex-direction:column;flex:1;gap:8px;min-width:200px;display:flex}.filter-group label{text-transform:uppercase;color:#64748b;letter-spacing:.5px;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.search-input,.filter-select{color:#1e293b;background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;width:100%;padding:12px 16px;font-size:15px;transition:all .2s cubic-bezier(.4,0,.2,1)}.search-input:focus,.filter-select:focus{background:#fff;border-color:#3b82f6;outline:none;box-shadow:0 0 0 4px #3b82f61a}.btn-refresh{color:#64748b;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;padding:16px;font-size:15px;transition:all .2s cubic-bezier(.4,0,.2,1);flex-grow:0!important;flex-shrink:0!important;width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;max-height:64px!important;display:flex!important}.btn-refresh:hover{color:#3b82f6;background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px)}.quotes-table-container{background:#fff;border:1px solid #f1f5f9;border-radius:16px;overflow:hidden;box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000006}.empty-state{text-align:center;color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.empty-state p{margin:0;font-size:18px;font-weight:500}.quotes-table{border-collapse:separate;border-spacing:0;width:100%}.quotes-table thead{background:#f8fafc}.quotes-table th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.75px;border-bottom:2px solid #e2e8f0;padding:20px 24px;font-size:12px;font-weight:700}.quotes-table tbody tr{transition:all .2s}.quotes-table tbody tr:hover{background-color:#f8fafc}.quotes-table td{color:#334155;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:20px 24px;font-size:15px}.quotes-table tbody tr:last-child td{border-bottom:none}.quote-number{color:#3b82f6;font-family:Monaco,Consolas,monospace;font-weight:700}.quote-amount{color:#1e293b;font-feature-settings:"tnum";font-weight:700}.quote-contractor{color:#475569;font-weight:500}.quote-date{color:#64748b;font-size:14px}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:9999px;align-items:center;padding:6px 14px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.badge-submitted{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa}.badge-approved{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.badge-rejected{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.quote-actions{justify-content:flex-end;gap:10px;display:flex}.btn-action{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:20px;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-action.view{color:#64748b;background:#fff;border:1px solid #e2e8f0}.btn-action.view:hover{color:#3b82f6;background:#f1f5f9;border-color:#bfdbfe;transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000000d}.btn-action.approve{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.btn-action.approve:hover:not(:disabled){color:#fff;background:#16a34a;border-color:#16a34a;transform:translateY(-2px);box-shadow:0 4px 6px -1px #16a34a33}.btn-action.reject{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.btn-action.reject:hover:not(:disabled){color:#fff;background:#dc2626;border-color:#dc2626;transform:translateY(-2px);box-shadow:0 4px 6px -1px #dc262633}.btn-action:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.loading-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;display:flex}.spinner{border:4px solid #f1f5f9;border-top-color:#3b82f6;border-radius:50%;width:50px;height:50px;animation:.8s cubic-bezier(.55,.055,.675,.19) infinite spin}.loading-container p{color:#64748b;margin-top:24px;font-size:16px;font-weight:500}@media (width<=1024px){.filters-section{flex-direction:column;align-items:stretch}.btn-refresh{width:100%}}@media (width<=768px){.quote-approval-page{padding:20px 16px}.quote-approval-page .page-header h1{font-size:28px}.filters-section{padding:20px}.quotes-table thead{display:none}.quotes-table,.quotes-table tbody,.quotes-table tr,.quotes-table td{width:100%;display:block}.quotes-table tr{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;overflow:hidden;box-shadow:0 4px 6px -1px #00000005}.quotes-table td{text-align:right;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.quotes-table td:last-child{background:#f8fafc;border-bottom:none;padding:12px 20px}.quotes-table td:before{content:attr(data-label);color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;text-align:left;margin-right:16px;font-size:11px;font-weight:700}.quote-contractor{color:#1e293b;font-weight:600;display:block!important}.quote-actions{justify-content:space-between;width:100%}.btn-action{flex:1;height:44px;font-size:22px}}@media (width<=480px){.page-header h1{font-size:24px}.quotes-table td{padding:12px 16px;font-size:14px}}.project-overview-page{background-color:var(--color-white,#fff);min-height:100vh;color:var(--charcoal-gray,#2c3531)}.project-overview-page .section-title,.project-overview-page .section-content,.project-overview-page .section-description,.project-overview-page .feature-label,.project-overview-page .location-address,.project-overview-page .location-address strong,.project-overview-page .location-address p{color:var(--charcoal-gray,#2c3531)!important}.project-overview-page .section-title{font-family:var(--font-heading);font-weight:400;text-decoration:none}.project-overview-loading,.project-overview-error{min-height:60vh;padding:var(--spacing-xl,2rem);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.project-overview-loading p,.project-overview-error p{color:var(--text-primary,var(--color-text,#666));margin-bottom:var(--spacing-lg,1.5rem);font-size:1.2rem}.project-overview-error button{background-color:var(--primary-color,var(--color-primary));color:var(--color-white,white);cursor:pointer;transition:all .3s var(--easing,ease);border:none;border-radius:8px;padding:.875rem 2rem;font-size:1rem;font-weight:500}.project-overview-error button:hover{background-color:var(--tertiary-color,var(--color-secondary));transform:translateY(-2px);box-shadow:0 6px 20px #0000001f}.project-hero{padding:6.4rem var(--spacing-lg);background:var(--primary-color,#aab2a6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.hero-image-container{top:var(--spacing-lg,2rem);left:var(--spacing-lg,2rem);z-index:1;width:104px;height:104px;position:absolute}.hero-image{object-fit:contain;width:100%;height:100%;box-shadow:none;border:none;border-radius:0}.hero-logo-container{width:240px;height:240px;box-shadow:none;z-index:2;background:0 0;border-radius:8px;justify-content:center;align-items:center;margin-bottom:1rem;display:flex;overflow:hidden}.project-logo{object-fit:cover;width:100%;height:100%;display:block}.hero-overlay{background:0 0;justify-content:center;align-items:center;display:flex;position:static}.hero-content{text-align:center;color:var(--color-white,white);z-index:1;max-width:900px;margin:0 auto;padding:0}.hero-title{font-family:var(--font-heading);margin-bottom:var(--spacing-sm,.75rem);text-transform:uppercase;letter-spacing:-.02em;color:var(--color-white,white);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400;line-height:1.2}.hero-subtitle{color:#fffffff2;max-width:700px;margin:0 auto;font-size:1rem;font-weight:300;line-height:1.6}.hero-title,.hero-subtitle{display:none}@media (width<=767px){.hero-title,.hero-subtitle{display:block}.hero-logo-container{width:180px;height:180px}.project-hero{padding:var(--spacing-section,4rem) var(--spacing-lg);align-items:center}}.project-section{padding:var(--spacing-xxl,4rem) var(--spacing-lg,2rem)}.overview-section{background-color:var(--color-white,#fff)}.features-section{padding:calc(var(--spacing-xxl) * 1.5) var(--spacing-lg);background-color:#f8f9fa}.section-container{max-width:var(--content-max-width,1200px);width:100%;margin:0 auto}.section-title{font-family:var(--font-heading);margin-bottom:var(--spacing-xxl,3rem);color:var(--primary-color,var(--text-primary,#2c3e50));text-transform:uppercase;letter-spacing:.08em;padding-bottom:var(--spacing-lg,1.5rem);text-align:center;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:400;position:relative}.section-title:after{content:"";background:var(--color-secondary,#aab2a6);border-radius:2px;width:60px;height:4px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.section-content{color:var(--text-primary,#555);margin-bottom:var(--spacing-lg,1.5rem);text-align:center;max-width:900px;margin-left:auto;margin-right:auto;font-size:1.15rem;font-weight:400;line-height:1.8}.section-description{color:#6b7280;text-align:center;width:100%;max-width:100%;font-size:1rem;font-weight:300;line-height:1.7}.location-section{background-color:#f8f9fa}.features-grid{gap:var(--spacing-xxl,3rem);margin-top:var(--spacing-xl,2rem);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.feature-card{background:var(--color-white,white);padding:calc(var(--spacing-xl) * 1.5) var(--spacing-xl);text-align:center;transition:all .3s var(--easing,ease);border:1px solid #0000000d;border-radius:20px;position:relative;overflow:visible;box-shadow:0 6px 20px #00000014}.feature-card:before{display:none}.feature-card:hover{border-color:var(--primary-color,var(--color-primary));transform:translateY(-10px);box-shadow:0 20px 40px #00000026}.clickable-card{cursor:pointer}.feature-title{margin-bottom:var(--spacing-lg,1.5rem);color:var(--primary-color,var(--color-primary));text-transform:uppercase;letter-spacing:.05em;font-size:1.25rem;font-weight:600;line-height:1.4}.feature-icon{color:var(--color-white,white);margin-bottom:var(--spacing-lg,1.5rem);background:linear-gradient(135deg, var(--primary-color,var(--color-primary)), var(--tertiary-color,var(--color-secondary)));width:80px;height:80px;transition:all .3s var(--easing,ease);border-radius:20px;justify-content:center;align-items:center;font-size:3rem;display:inline-flex;box-shadow:0 4px 16px #00000026}.feature-card:hover .feature-icon{transform:scale(1.1)rotate(5deg);box-shadow:0 8px 24px #0003}.feature-description{color:#6b7280;font-size:1rem;line-height:1.7}.lots-section{background-color:#f8f9fa}.lots-grid{gap:var(--spacing-lg,2rem);margin-top:var(--spacing-xl,2rem);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.lot-card{background:var(--color-white,white);transition:all .3s var(--easing,ease);border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014}.lot-card:hover{transform:translateY(-6px);box-shadow:0 12px 24px #0000001f}.lot-image-container{width:100%;height:220px;overflow:hidden}.lot-image{object-fit:cover;width:100%;height:100%;transition:transform .3s var(--easing,ease)}.lot-card:hover .lot-image{transform:scale(1.05)}.lot-details{padding:var(--spacing-lg,1.5rem)}.lot-location{color:var(--primary-color,var(--color-primary));margin-bottom:var(--spacing-sm,.75rem);font-size:1.25rem;font-weight:600}.lot-info{margin-bottom:var(--spacing-md,1rem);padding-bottom:var(--spacing-sm,.75rem);border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;display:flex}.lot-dimensions{color:var(--color-text,#666);font-size:.95rem}.lot-price{color:var(--primary-color,var(--color-primary));font-size:1.2rem;font-weight:700}.lot-status{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-block}.status-available{background-color:var(--primary-color,var(--color-primary));color:var(--color-white,white)}.status-sold{color:var(--color-white,white);background-color:#dc3545}.status-pending{color:#333;background-color:#ffc107}.location-content{gap:var(--spacing-xxl,3rem);margin-top:var(--spacing-xl,2rem);grid-template-columns:1fr 1fr;align-items:start;display:grid}.location-text{gap:var(--spacing-lg,1.5rem);flex-direction:column;display:flex}.location-address{background:var(--color-white,white);padding:var(--spacing-lg,2rem);border-left:4px solid var(--primary-color,var(--color-primary));border-radius:8px;box-shadow:0 4px 12px #00000014}.location-address strong{margin-bottom:var(--spacing-sm,.75rem);color:var(--primary-color,var(--color-primary));text-transform:uppercase;letter-spacing:.05em;font-size:1.1rem;font-weight:600;display:block}.location-address p{color:var(--text-primary,var(--color-text,#555));margin:0;font-size:1.05rem;line-height:1.6}.location-map{border:2px solid var(--primary-color,var(--color-primary));border-radius:12px;width:100%;height:400px;position:relative;overflow:hidden;box-shadow:0 6px 20px #0000001a}.modal-overlay{z-index:9999;backdrop-filter:blur(2px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container{z-index:10000;background:#fff;border-radius:12px;flex-direction:column;width:95%;max-width:1200px;max-height:95vh;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header{padding:var(--spacing-lg,1.5rem);z-index:10001;background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;display:flex;position:relative}.modal-title{color:var(--primary-color,var(--color-primary));margin:0;font-size:1.3rem;font-weight:600}.modal-close-btn{cursor:pointer;color:var(--text-primary,var(--color-text));z-index:10002;background:0 0;border:none;padding:.25rem;font-size:2rem;line-height:1;transition:color .2s;position:relative}.modal-close-btn:hover{color:var(--primary-color,var(--color-primary))}.modal-body{flex:1;min-height:500px;position:relative}.modal-footer{padding:var(--spacing-lg,1.5rem);text-align:right;z-index:10001;background-color:#f8f9fa;border-top:1px solid #e0e0e0;position:relative}.btn-secondary{background-color:var(--primary-color,var(--color-primary));color:#fff;cursor:pointer;transition:all .3s var(--easing,ease);border:none;border-radius:8px;padding:.75rem 1.75rem;font-size:1rem;font-weight:500}.btn-secondary:hover{background-color:var(--tertiary-color,var(--color-secondary));transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.leaflet-container{position:absolute;top:0;left:0;z-index:1!important;width:100%!important;height:100%!important}.leaflet-tile-container{z-index:1;position:absolute}.leaflet-tile{width:256px;height:256px;position:absolute}.back-button-container{max-width:var(--content-max-width,1200px);padding:var(--spacing-xxl,3rem) var(--spacing-lg,2rem);box-sizing:border-box;flex-wrap:nowrap;justify-content:center;align-items:center;width:100%;margin:0 auto;display:flex}.back-button,.view-lots-button{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;justify-content:center;align-items:center;min-width:0;height:3.5rem;padding:0 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}@media (width<=600px){.back-button-container{gap:.5rem;padding:2rem 1rem}.back-button,.view-lots-button{height:3rem;padding:0 .75rem;font-size:.8rem}}.back-button{background-color:var(--primary-color,var(--color-primary,#4a4a4a));color:var(--white,#fff)}.view-lots-button{background-color:var(--accent-color,var(--secondary-color,#3498db));color:var(--white,#fff)}.view-lots-button:hover,.back-button:hover{background-color:var(--secondary-color,var(--accent-color,#2b6da5));transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.project-features-grid{justify-content:center;align-items:center;gap:5rem;width:100%;margin:4rem auto;display:flex}.feature-item{cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;transition:transform .3s;display:flex}.icon-container{justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:1rem;display:flex}.base-react-icon{width:80px;height:80px;color:var(--primary-color,var(--color-primary,#4a4a4a));transition:color .3s,transform .3s}.feature-item:hover .base-react-icon{color:var(--tertiary-color,var(--color-secondary,#8a9287));transform:scale(1.1)}.feature-label{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.15em;color:var(--primary-color,var(--color-primary));margin-top:.5rem;font-size:.9rem;font-weight:500}@media (width<=768px){.project-features-grid{gap:2rem}.base-react-icon{width:60px;height:60px}.icon-container{width:80px;height:80px}}@media (width<=992px){.hero-title{font-size:clamp(1.75rem,5vw,3rem)}.hero-subtitle{font-size:clamp(1rem,2vw,1.2rem)}.hero-image-container{width:60px;height:60px;top:var(--spacing-md,1rem);left:var(--spacing-md,1rem)}.section-title{font-size:clamp(1.5rem,3.5vw,2.2rem)}.location-content{gap:var(--spacing-lg,2rem);grid-template-columns:1fr}.location-map{height:350px}.features-grid{gap:var(--spacing-xl,2rem)}}@media (width<=768px){.project-section{padding:var(--spacing-xl,3rem) var(--spacing-md,1.5rem)}.project-hero,.features-section{padding:var(--spacing-xxl,3rem) var(--spacing-md,1.5rem)}.features-grid{gap:var(--spacing-lg,2rem);grid-template-columns:1fr}.hero-image-container{width:50px;height:50px;top:var(--spacing-sm,1rem);left:var(--spacing-sm,1rem)}.feature-icon{width:70px;height:70px;font-size:2.5rem}.modal-container{width:95%}}@media (width<=480px){.project-section{padding:var(--spacing-lg,2rem) var(--spacing-sm,1rem)}.project-hero,.features-section{padding:var(--spacing-xl,2rem) var(--spacing-sm,1rem)}.hero-image-container{width:45px;height:45px;top:var(--spacing-sm,.75rem);left:var(--spacing-sm,.75rem)}.feature-icon{width:60px;height:60px;font-size:2rem}.location-map{height:300px}.back-button-container{padding:var(--spacing-xl,2rem) 0}}.lotissement-section{padding:40px 0}.lot-map-section{justify-content:center;padding:20px;display:flex}.lot-map-container{width:100%;max-width:900px}.lot-map-wrapper{width:100%;position:relative;overflow:hidden}.lot-map-image{width:100%;height:auto;display:block}.lot-marker{color:#fff;cursor:pointer;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 5px #00000080}.lot-marker:hover,.lot-marker:focus{z-index:10;transform:translate(-50%,-50%)scale(1.2);box-shadow:0 0 10px #fffc}.lot-marker-label{pointer-events:none}.lot-popup{color:#333;z-index:20;text-align:left;background-color:#fff;border-radius:6px;width:200px;padding:10px;font-size:14px;position:absolute;box-shadow:0 4px 12px #0000004d}.lot-popup-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;margin-bottom:5px;padding-bottom:5px;display:flex}.lot-popup-title{margin:0;font-size:16px}.lot-popup-close-btn{cursor:pointer;color:#999;background:0 0;border:none;font-size:18px;line-height:1}.lot-popup p{margin:3px 0}.lot-popup-description{margin-top:8px;font-size:13px;font-style:italic}.report-generator{width:100%;padding:0}.alert{border-radius:4px;margin-bottom:1.5rem;padding:1rem}.alert-error{color:#c00;background-color:#fee;border:1px solid #fcc}.alert-success{color:#060;background-color:#efe;border:1px solid #cfc}.report-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.btn-primary{color:#fff;cursor:pointer;background-color:#3498db;border:none;border-radius:4px;padding:.75rem}.modal-overlay{z-index:1000;backdrop-filter:blur(3px);background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container{background:#fff;border-radius:12px;width:95%;max-width:480px;padding:1.5rem;box-shadow:0 15px 35px #0003}.modal-header h3{color:#2c3e50;margin:0;font-size:1.4rem;font-weight:700}.modal-body{color:#4b5563;margin:.75rem 0 0;font-size:1rem;line-height:1.5}.modal-body p{margin:0 0 .5rem}.warning-text{color:#d93025;background:#fff8f7;border:1px solid #fadbd8;border-radius:8px;align-items:center;margin-top:2%;padding:10px;font-size:.9rem;display:flex}.modal-footer{justify-content:flex-end;gap:1rem;margin-top:1.25rem;display:flex}.secondary-btn,.danger-btn{cursor:pointer;border:none;border-radius:8px;margin-right:10%;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;transition:all .2s}.secondary-btn{color:#374151;background:#f3f4f6}.secondary-btn:hover{background:#e5e7eb}.danger-btn{color:#fff;background:#e74c3c}.danger-btn:hover{background:#c0392b;box-shadow:0 4px 12px #e74c3c33}.reports-table{border-collapse:collapse;width:100%}.reports-table th,.reports-table td{border-bottom:1px solid #ecf0f1;padding:1rem}.format-badge{border-radius:12px;padding:.25rem .75rem;font-size:.8rem}.format-pdf{color:#c00;background-color:#fee}.format-xlsx{color:#060;background-color:#efe}.delete-btn{color:#fff;cursor:pointer;background-color:#e74c3c;border:none;border-radius:4px;margin-left:8px;padding:5px 10px}.delete-btn:hover{background-color:#c0392b}.delete-btn:disabled{background-color:#95a5a6}.download-btn{color:#fff;cursor:pointer;background-color:#3498db;border:none;border-radius:4px;padding:5px 10px}.report-list table{border-collapse:collapse;width:100%;margin-top:1rem}.report-list th{text-align:left;color:#7f8c8d;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #ecf0f1;padding:1.25rem 1rem;font-size:.9rem}.report-list td{vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:1.5rem 1rem}.report-list tr:hover td{background-color:#f9fbfd}.format-badge{border-radius:12px;padding:.4rem 1rem;font-size:.85rem;font-weight:600}.download-btn,.delete-btn{padding:8px 16px;font-size:.9rem;transition:background-color .2s}.actions-cell{justify-content:flex-end;align-items:center;gap:12px;display:flex}.tabs{border-bottom:2px solid #ecf0f1;justify-content:center;gap:1rem;width:100%;margin-bottom:2rem;display:flex}.page-header{text-align:center;width:100%;margin-bottom:1.5rem}.page-header h1{color:#2c3e50;margin-bottom:.5rem;font-size:2rem}.page-header p{color:#7f8c8d;font-size:1rem}.tab{cursor:pointer;color:#7f8c8d;background:0 0;border:none;padding:1rem 2rem}.tab.active{color:#3498db;border-bottom:3px solid #3498db}.tab-content{text-align:left;background:#fff;border-radius:8px;width:100%;max-width:900px;margin:0 auto 4rem;padding:2rem;box-shadow:0 2px 4px #0000001a}.notification-item{background:linear-gradient(to right, var(--white) 0%, var(--bg-card) 100%);border:2px solid var(--border-color);border-radius:calc(var(--border-radius) * 1.5);cursor:pointer;transition:var(--transition);gap:1.125rem;margin-bottom:1rem;padding:1.25rem;display:flex;box-shadow:0 1px 3px #0000000d}.notification-item:hover{background:linear-gradient(to right, var(--gray-50) 0%, var(--gray-100) 100%);border-color:var(--brand-primary);box-shadow:0 4px 12px var(--brand-primary-light);transform:translateY(-2px)}.notification-item.unread{border-left:5px solid var(--brand-primary);border-right:2px solid var(--border-color);box-shadow:0 2px 8px var(--brand-primary-light);background:linear-gradient(90deg,#e8f4f8 0%,#dbeafe 100%);font-weight:500}.notification-item.read{opacity:.75;background:var(--white)}.notification-item.read:hover{opacity:1}.notification-icon{background:linear-gradient(135deg, var(--brand-primary-light) 0%, var(--brand-primary-lighter) 100%);border-radius:calc(var(--border-radius) * 1.5);flex-shrink:0;justify-content:center;align-items:center;min-width:3rem;height:3rem;display:flex}.notification-icon .category-icon{color:var(--brand-primary);font-size:1.5rem}.notification-content{flex:1;min-width:0}.notification-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.notification-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:1rem;font-weight:600;overflow:hidden}.notification-badge{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%);color:var(--white);border-radius:calc(var(--border-radius) * 1.5);text-transform:uppercase;letter-spacing:.05rem;flex-shrink:0;padding:.3125rem .625rem;font-size:.7rem;font-weight:700;box-shadow:0 2px 6px #4a90a44d}.notification-message{color:var(--gray-600);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .625rem;font-size:.95rem;line-height:1.6;display:-webkit-box;overflow:hidden}.notification-footer{color:var(--text-muted);justify-content:space-between;align-items:center;gap:.75rem;font-size:.8rem;display:flex}.notification-category{text-transform:capitalize;color:var(--text-secondary);background:var(--gray-100);border-radius:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600}.notification-time{color:var(--text-muted);white-space:nowrap}@media (width<=768px){.notification-item{gap:.75rem;padding:.75rem}.notification-icon{min-width:1.75rem;height:1.75rem;font-size:1.25rem}.notification-title{font-size:.9rem}.notification-message{font-size:.85rem}.notification-footer{flex-direction:column;align-items:flex-start;gap:.25rem;font-size:.75rem}}.inbox-page{background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);min-height:calc(100vh - 12.5rem);padding:1.5% 1%}.inbox-container{background-color:var(--card-background);border-radius:calc(var(--border-radius) * 1.5);max-width:90%;box-shadow:0 .25rem 1.25rem #00000014, 0 .125rem .5rem var(--brand-primary-light);margin:0 auto;padding:2.5%}.inbox-header{border-bottom:2px solid var(--border-color);background:linear-gradient(to right, var(--brand-primary-lighter), transparent);border-radius:calc(var(--border-radius) * 1.5) calc(var(--border-radius) * 1.5) 0 0;justify-content:space-between;align-items:center;margin:-2.5% -2.5% 2%;padding:1.5%;display:flex}.inbox-title-section{align-items:center;gap:1rem;display:flex}.inbox-header-actions{align-items:center;gap:.75rem;display:flex}.inbox-icon{color:var(--brand-primary);background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.25rem}.inbox-title{color:var(--text-primary);margin:0;font-size:2rem;font-weight:600}.inbox-unread-badge{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%);color:var(--white);letter-spacing:.025em;border-radius:9999px;justify-content:center;align-items:center;min-width:fit-content;margin-left:.75rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;line-height:1;display:inline-flex;box-shadow:0 .125rem .5rem #4a90a44d}.btn-mark-all-read{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%);color:var(--white);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);border:none;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;box-shadow:0 .125rem .5rem #4a90a440}.btn-mark-all-read:hover{background:linear-gradient(135deg, var(--brand-primary-dark) 0%, var(--brand-primary-darker) 100%);transform:translateY(-2px);box-shadow:0 .25rem .75rem #4a90a459}.btn-mark-all-read:active{transform:translateY(0)}.btn-seed-test{color:var(--white);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;box-shadow:0 .125rem .5rem #10b98140}.btn-seed-test:hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);transform:translateY(-2px);box-shadow:0 .25rem .75rem #10b98159}.btn-seed-test:active{transform:translateY(0)}.btn-seed-test:disabled{opacity:.7;cursor:not-allowed}.inbox-controls{background:var(--gray-50);border:1px solid var(--border-color);border-radius:.625rem;flex-direction:column;gap:1.5rem;margin-bottom:2%;padding:1.25%;display:flex}.inbox-search{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-muted);font-size:1.125rem;position:absolute;left:.75%}.search-input{border:2px solid var(--border-color);width:100%;transition:var(--transition);background:var(--white);border-radius:.625rem;padding:.875rem .875rem .875rem 2.75rem;font-size:.95rem}.search-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 4px var(--brand-primary-light);background:var(--white);outline:none}.inbox-filters{flex-wrap:wrap;align-items:center;gap:1%;display:flex}.filter-group{flex:1;align-items:center;gap:.625rem;min-width:0;display:flex}.filter-icon{color:var(--text-secondary);font-size:1.125rem}.filter-select{border:2px solid var(--border-color);background-color:var(--white);cursor:pointer;transition:var(--transition);border-radius:.625rem;flex:1;min-width:10rem;padding:.75rem .875rem;font-size:.9rem;font-weight:500}.filter-select:focus{border-color:var(--brand-primary);box-shadow:0 0 0 4px var(--brand-primary-light);outline:none}.filter-select:hover{border-color:var(--border-color-dark)}.inbox-filter-select{flex:1;min-width:10rem;position:relative}.inbox-filter-select-trigger{border:2px solid var(--border-color);background-color:var(--white);width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition);text-align:left;border-radius:.625rem;align-items:center;gap:.625rem;padding:.75rem .875rem;font-family:inherit;font-size:.9rem;font-weight:500;display:flex}.inbox-filter-select-trigger:hover{border-color:var(--border-color-dark)}.inbox-filter-select-trigger:focus{border-color:var(--brand-primary);box-shadow:0 0 0 4px var(--brand-primary-light);outline:none}.inbox-filter-select-icon{color:var(--text-secondary);flex-shrink:0;font-size:1.125rem}.inbox-filter-select-value{flex:1;min-width:0}.inbox-filter-select-caret{color:var(--text-secondary);flex-shrink:0;font-size:1.125rem;transition:transform .2s}.inbox-filter-select-caret.is-open{transform:rotate(180deg)}.inbox-filter-select-dropdown{z-index:50;background:var(--card-background);border:2px solid var(--border-color);box-shadow:0 .25rem 1.25rem #00000014, 0 .125rem .5rem var(--brand-primary-light);border-radius:.625rem;min-width:100%;max-height:16rem;padding:.375rem;position:absolute;top:calc(100% + .375rem);left:0;right:0;overflow-y:auto}.inbox-filter-select-option{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:.5rem;padding:.625rem .875rem;font-family:inherit;font-size:.9rem;font-weight:500;display:block}.inbox-filter-select-option:hover{background:var(--brand-primary-lighter);color:var(--brand-primary-dark)}.inbox-filter-select-option.is-selected{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%);color:var(--white)}.inbox-filter-select-option.is-selected:hover{background:linear-gradient(135deg, var(--brand-primary-dark) 0%, var(--brand-primary-darker) 100%);color:var(--white)}.inbox-content{margin-top:1.5%}.notifications-list{flex-direction:column;display:flex}.inbox-empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;min-height:30vh;padding:5% 1.25%;display:flex}.empty-icon{color:var(--gray-300);opacity:.6;margin-bottom:1.5rem;font-size:4.5rem}.inbox-empty p{color:var(--text-tertiary);margin:0;font-size:1.15rem;font-weight:500}.inbox-loading,.inbox-error{text-align:center;padding:3.75% 1.25%;font-size:1.1rem}.inbox-error{color:#dc2626}@media (width<=768px){.inbox-container{max-width:95%;margin:0 auto;padding:1.25%}.inbox-header{flex-direction:column;align-items:flex-start;gap:1rem;margin:-1.25% -1.25% 1.5%;padding:1.25%}.inbox-title{font-size:1.5rem}.inbox-icon{font-size:1.75rem}.inbox-controls{gap:1.25rem;padding:1rem}.inbox-filters{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.filter-group{flex-direction:row;align-items:center;gap:.625rem;width:100%}.filter-icon{flex-shrink:0}.filter-select{flex:1;width:100%;min-width:0}.inbox-filter-select{width:100%;min-width:0}.btn-mark-all-read{width:100%}}@media (width<=480px){.inbox-page{justify-content:center;align-items:center;min-height:calc(100vh - 8rem);padding:1rem .5rem;display:flex}.inbox-container{width:100%;max-width:100%;margin:0 auto;padding:1rem}.inbox-header{margin:-1rem -1rem 1.25rem;padding:1rem}.inbox-title{font-size:1.25rem}.inbox-unread-badge{padding:.25rem .5rem;font-size:.75rem}.inbox-controls{gap:1rem;padding:.75rem}.filter-group{flex-direction:row;align-items:center}.filter-icon{margin-right:0}.inbox-empty{min-height:40vh;padding:3rem 1rem}.empty-icon{font-size:3.5rem}}:root{--color-primary:#4c4d4f;--color-secondary:#aab2a6;--color-light:#ecedee;--color-white:#fff;--color-accent:#aab2a6;--color-text:#333;--color-text-muted:#6b7280;--color-success:#4ade80;--color-warning:#fbbf24;--color-danger:#ef4444;--spacing-xs:.75rem;--spacing-sm:1.25rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;--spacing-xxl:6rem;--content-width:80%;--content-max-width:1400px;--font-heading:"Georgia", "Times New Roman", serif;--font-body:"Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;--duration:.8s;--easing:cubic-bezier(.25, .46, .45, .94)}.forms-page{background-color:var(--color-white);flex-direction:column;min-height:100vh;display:flex}.forms-hero{width:100%;height:50vh;min-height:400px;margin-bottom:var(--spacing-xl);background:#aab2a6;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.forms-hero-content{z-index:1;text-align:center;color:var(--color-white);position:relative}.forms-hero-title{font-family:var(--font-heading);margin:0;font-size:clamp(2.5rem,5vw,4rem);font-weight:400}.forms-content{padding:0 0 var(--spacing-xxl);flex:1;justify-content:center;width:100%;display:flex}.forms-container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.forms-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.forms-subtitle{font-family:var(--font-heading);color:var(--color-primary);margin:0;font-size:clamp(1.5rem,3vw,2rem)}.forms-create-button{background-color:var(--color-primary);color:var(--color-white);cursor:pointer;transition:all .3s var(--easing);border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:500}.forms-create-button:hover{background-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.forms-filters{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;display:flex}.forms-search-container{flex:1;min-width:300px}.forms-search-input{border:2px solid var(--color-light);border-radius:8px;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .3s}.forms-search-input:focus{border-color:var(--color-accent);outline:none}.forms-filter-select{border:2px solid var(--color-light);background-color:var(--color-white);cursor:pointer;border-radius:8px;padding:.75rem 1rem;font-size:1rem;transition:border-color .3s}.forms-filter-select:focus{border-color:var(--color-accent);outline:none}.forms-loading{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:1.125rem}.forms-error{margin-bottom:var(--spacing-md);color:var(--color-danger);background-color:#fee;border:1px solid #fcc;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.forms-error p{flex:1;margin:0}.forms-error button{color:var(--color-danger);cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:1.5rem}.forms-error-modal{margin-bottom:1rem}.no-forms{text-align:center;padding:var(--spacing-xxl);color:var(--color-text-muted)}.no-forms p{font-size:1.125rem}.forms-list{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(350px,1fr));display:grid}.form-card{background:var(--color-white);border:2px solid var(--color-light);padding:var(--spacing-md);transition:all .3s var(--easing);border-radius:12px}.form-card:hover{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.form-card-header{margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-light);justify-content:space-between;align-items:center;display:flex}.form-card-title{font-family:var(--font-heading);color:var(--color-primary);text-transform:capitalize;margin:0;font-size:1.25rem}.form-status{text-transform:uppercase;border-radius:20px;padding:.25rem .75rem;font-size:.875rem;font-weight:600}.form-status-DRAFT{color:#374151;background-color:#e5e7eb}.form-status-ASSIGNED{color:#1e40af;background-color:#dbeafe}.form-status-IN_PROGRESS{color:#92400e;background-color:#fef3c7}.form-status-SUBMITTED{color:#065f46;background-color:#d1fae5}.form-status-REOPENED{color:#9a3412;background-color:#fed7aa}.form-status-COMPLETED{color:#064e3b;background-color:#a7f3d0}.form-card-body{margin-bottom:var(--spacing-sm)}.form-card-body p{color:var(--color-text);margin:.5rem 0;line-height:1.6}.form-card-body strong{color:var(--color-primary)}.form-card-actions{margin-top:var(--spacing-sm);flex-wrap:wrap;gap:.75rem;display:flex}.form-action-button{cursor:pointer;transition:all .3s var(--easing);border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500}.form-action-reopen{background-color:var(--color-warning);color:var(--color-white)}.form-action-reopen:hover{background-color:#f59e0b;transform:translateY(-1px)}.form-action-complete{background-color:var(--color-success);color:var(--color-white)}.form-action-complete:hover{background-color:#22c55e;transform:translateY(-1px)}.form-action-delete{background-color:var(--color-danger);color:var(--color-white)}.form-action-delete:hover{background-color:#dc2626;transform:translateY(-1px)}.form-action-download{background-color:var(--color-primary);color:var(--color-white)}.form-action-download:hover{background-color:#2f3133;transform:translateY(-1px)}.form-action-view{background-color:var(--color-secondary);color:var(--color-text)}.form-action-view:hover{background-color:var(--color-light);transform:translateY(-1px)}.forms-view-summary p{margin:0 0 .5rem}.forms-data-block{margin-top:var(--spacing-sm)}.forms-data-empty{color:var(--color-text-muted);margin:.5rem 0 0}.forms-data-list{margin-top:var(--spacing-sm);border:1px solid var(--color-light);background-color:var(--color-white);border-radius:6px;overflow:hidden}.forms-data-row{gap:var(--spacing-sm);padding:.5rem var(--spacing-sm);border-bottom:1px solid var(--color-light);grid-template-columns:minmax(140px,220px) 1fr;font-size:.9rem;display:grid}.forms-data-row:last-child{border-bottom:none}.forms-data-key{color:var(--color-text);word-break:break-word;font-weight:600}.forms-data-value{color:var(--color-text);word-break:break-word}.forms-modal-overlay{z-index:1000;padding:var(--spacing-md);background-color:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.forms-modal-large{max-width:800px}.forms-modal-header{padding:var(--spacing-md);border-bottom:2px solid var(--color-light);justify-content:space-between;align-items:center;display:flex}.forms-modal-header h2{font-family:var(--font-heading);color:var(--color-primary);margin:0;font-size:1.5rem}.forms-modal-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:2rem;transition:color .3s;display:flex}.forms-modal-close:hover{color:var(--color-danger)}.forms-modal-footer{justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:2px solid var(--color-light);display:flex}.forms-form-group label{color:var(--color-primary);margin-bottom:.5rem;font-weight:600;display:block}.forms-form-input,.forms-form-select,.forms-form-textarea{border:2px solid var(--color-light);width:100%;font-size:1rem;font-family:var(--font-body);border-radius:8px;padding:.75rem;transition:border-color .3s}.forms-form-input:focus,.forms-form-select:focus,.forms-form-textarea:focus{border-color:var(--color-accent);outline:none}.forms-form-textarea{resize:vertical;min-height:100px}.forms-modal-button{cursor:pointer;transition:all .3s var(--easing);border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500}.forms-modal-button-primary{background-color:var(--color-primary);color:var(--color-white)}.forms-modal-button-primary:hover{background-color:var(--color-accent);transform:translateY(-1px)}.forms-modal-button-secondary{background-color:var(--color-light);color:var(--color-text)}.forms-modal-button-danger{background-color:var(--color-danger);color:var(--color-white)}.forms-modal-button-danger:hover{background-color:#dc2626;transform:translateY(-1px)}@media (width<=768px){.forms-hero{height:40vh;min-height:300px}.forms-hero-title{font-size:2rem}.forms-container{width:90%}.forms-header{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.forms-create-button{width:100%}.forms-filters{flex-direction:column}.forms-search-container{min-width:100%}.forms-list{grid-template-columns:1fr}.forms-modal{max-width:95%}}.owner-review-forms-page{max-width:100%;margin:0 auto;padding:0}.forms-header-banner{text-align:center;background-color:#aab2a6;width:100%;margin-bottom:2rem;padding:3.5rem 2rem}.forms-header-banner h1{color:#fff;margin:0 0 .75rem;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:600}.forms-header-banner .forms-subtitle{color:#fff;opacity:.95;margin:0;font-size:clamp(1rem,2vw,1.25rem)}.forms-header{margin-bottom:2rem}.forms-header h1{color:#1a1a1a;margin-bottom:.5rem;font-size:2rem;font-weight:600}.forms-subtitle{color:#666;font-size:1rem}.forms-filters{flex-wrap:wrap;gap:1.5rem;max-width:1400px;margin-bottom:2rem;margin-left:auto;margin-right:auto;padding:0 2rem;display:flex}.filter-group{flex-direction:column;gap:.5rem;display:flex}.filter-group label{color:#333;font-size:.9rem;font-weight:500}.forms-filter-select{cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:6px;min-width:200px;padding:.5rem 1rem;font-size:.95rem}.forms-filter-select:hover{border-color:#999}.forms-filter-select:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.forms-loading{text-align:center;color:#666;padding:3rem}.forms-container{max-width:1400px;margin-top:2rem;margin-left:auto;margin-right:auto;padding:0 2rem}.no-forms{text-align:center;color:#666;background-color:#f8f9fa;border-radius:8px;padding:3rem}.forms-list{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem;display:grid}.form-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.form-card:hover{box-shadow:0 4px 12px #0000001a}.form-card-header{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.form-card-header h3{color:#333;text-transform:capitalize;margin:0;font-size:1.2rem;font-weight:600}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.status-submitted{color:#1976d2;background-color:#e3f2fd}.status-reopened{color:#f57c00;background-color:#fff3e0}.status-completed{color:#388e3c;background-color:#e8f5e9}.form-card-details{margin-bottom:1rem}.form-card-details p{color:#555;margin:.5rem 0;font-size:.9rem}.form-card-details p strong{color:#333;font-weight:600}.form-card-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.form-action-button{cursor:pointer;border:none;border-radius:6px;flex:1;min-width:140px;padding:.75rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s}.form-action-reopen{color:#fff;background-color:#ff9800}.form-action-reopen:hover{background-color:#f57c00;transform:translateY(-1px);box-shadow:0 2px 8px #ff98004d}.form-action-complete{color:#fff;background-color:#4caf50}.form-action-complete:hover{background-color:#388e3c;transform:translateY(-1px);box-shadow:0 2px 8px #4caf504d}.form-action-download{color:#fff;background-color:#2196f3}.form-action-download:hover{background-color:#1976d2;transform:translateY(-1px);box-shadow:0 2px 8px #2196f34d}.forms-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.forms-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.forms-modal-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.forms-modal-header h2{color:#333;margin:0;font-size:1.5rem}.forms-modal-close{color:#999;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;line-height:1;transition:all .2s;display:flex}.forms-modal-close:hover{color:#333;background-color:#f5f5f5}.forms-modal-body{padding:1.5rem}.forms-form-group{margin-bottom:1.5rem}.forms-form-group label{color:#333;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.forms-form-group .required{color:#d32f2f}.forms-form-group .optional{color:#999;font-style:italic;font-weight:400}.forms-form-textarea{resize:vertical;border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem;font-family:inherit;font-size:.95rem}.forms-form-textarea:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.forms-error-message{color:#c62828;background-color:#ffebee;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.9rem}.forms-modal-footer{border-top:1px solid #e0e0e0;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.forms-modal-button{cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s}.forms-modal-button-secondary{color:#333;background-color:#f5f5f5}.forms-modal-button-secondary:hover{background-color:#e0e0e0}.forms-modal-button-primary{color:#fff;background-color:#ff9800}.forms-modal-button-primary:hover{background-color:#f57c00;transform:translateY(-1px);box-shadow:0 2px 8px #ff98004d}@media (width<=768px){.owner-review-forms-page{padding:1rem}.forms-header h1{font-size:1.5rem}.forms-list{grid-template-columns:1fr}.forms-filters{flex-direction:column}.forms-filter-select{width:100%}.form-card-actions{flex-direction:column}.form-action-button{width:100%}.forms-modal{width:95%;max-height:95vh}.forms-modal-footer{flex-direction:column-reverse}.forms-modal-button{width:100%}}.coming-soon-page{box-sizing:border-box;background:var(--color-white,#fff);text-align:center;justify-content:center;align-items:center;width:100%;min-height:400px;margin:0;padding:2.5% 5%;display:flex;position:relative}.coming-soon-content{text-align:center;z-index:1;width:100%;max-width:600px;padding:2.5% 1.5%;position:relative}.coming-soon-logo{object-fit:contain;width:200px;max-width:70%;height:auto;margin-bottom:2rem}.coming-soon-page h1{color:var(--color-primary,#4c4d4f);margin:0 0 1%;font-size:32px;font-weight:600}.coming-soon-message{color:var(--color-text,#333);margin:0 0 .75%;font-size:18px;font-weight:500}.coming-soon-description{color:var(--color-text-muted,#6b7280);margin:0 0 2%;font-size:16px;line-height:1.6}.coming-soon-button{background:var(--color-secondary,#aab2a6);color:var(--color-white,#fff);border-radius:6px;margin-top:1rem;padding:12px 24px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.coming-soon-button:hover{background:var(--color-secondary,#aab2a6);filter:brightness(.85);color:var(--color-white,#fff)}.coming-soon-button:active{background:var(--color-secondary,#aab2a6);filter:brightness(.75)}@media (width<=768px){.coming-soon-page{min-height:calc(100vh - 150px);padding:5% 8%}.coming-soon-logo{width:150px}.coming-soon-page h1{font-size:26px}.coming-soon-message{font-size:16px}.coming-soon-description{font-size:14px}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#1a1a1a;--secondary-color:#f5f5f5;--accent-color:var(--brand-primary);--card-background:#fff;--background-color:#fff;--white:#fff;--text-primary:var(--primary-color);--font-heading:"Playfair Display", Georgia, serif;--font-body:"Plus Jakarta Sans", "Segoe UI", sans-serif;--charcoal-gray:#2c3531;--border-radius:8px;--box-shadow:0 2px 8px #0000001a;--transition:all .3s ease;--brand-primary:#aab2a6;--brand-primary-dark:#8a9287;--brand-primary-darker:#6a7266;--brand-primary-light:#aab2a626;--brand-primary-lighter:#aab2a614;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--border-color:#e5e7eb;--border-color-light:#d1d5db;--border-color-dark:#cbd5e1;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--text-muted:#999;--bg-secondary:#f5f7fa;--bg-tertiary:#e8f4f8;--bg-card:#fafbfc;--button-primary-bg:#aab2a6;--button-primary-hover:#8a9287;--button-primary-text:var(--white);--button-secondary-bg:var(--gray-200);--button-secondary-hover:var(--gray-300);--button-secondary-text:var(--gray-800);--button-danger-bg:var(--gray-600);--button-danger-hover:var(--gray-700);--button-danger-text:var(--white);--public-banner-bg:#aab2a6;--public-banner-height:220px}body{color:var(--text-primary);background-color:var(--background-color);font-family:Plus Jakarta Sans,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}.projects-hero,.pm-hero-banner,.project-hero,.le-header-section,.lots-header-section{box-sizing:border-box;justify-content:center;align-items:center;display:flex;min-height:var(--public-banner-height)!important;height:var(--public-banner-height)!important;padding:3rem 1.5rem!important}.projects-hero,.pm-hero-banner{background:var(--public-banner-bg)!important;background-image:none!important}.pm-hero-banner:before{display:none!important}img,video,canvas,textarea{max-width:100%}.container{width:90%;max-width:1400px;margin:0 auto;padding:24px 0}h1,h2,h3,h4,h5,h6{margin-bottom:1%;font-family:Playfair Display,Georgia,serif;font-weight:600}.projects-title,.pm-hero-title,.hero-title,.le-main-title{font-family:var(--font-heading)!important;letter-spacing:0!important;font-weight:400!important;text-decoration:none!important}button{cursor:pointer;transition:var(--transition);border:none;outline:none}.btn-primary,.modal-primary,.primary,.btn-submit,.btn-confirm,.save-button,.create-schedule-button,.edit-button,.upload-button{border-radius:var(--border-radius);font-weight:600;background-color:var(--button-primary-bg)!important;color:var(--button-primary-text)!important;background-image:none!important;border:1px solid #0000!important}.btn-primary:hover:not(:disabled),.modal-primary:hover:not(:disabled),.primary:hover:not(:disabled),.btn-submit:hover:not(:disabled),.btn-confirm:hover:not(:disabled),.save-button:hover:not(:disabled),.create-schedule-button:hover:not(:disabled),.edit-button:hover:not(:disabled),.upload-button:hover:not(:disabled){background-color:var(--button-primary-hover)!important;background-image:none!important}.btn-secondary,.btn-cancel,.modal-secondary,.cancel-button{border-radius:var(--border-radius);font-weight:600;background-color:var(--button-secondary-bg)!important;color:var(--button-secondary-text)!important;border:1px solid var(--border-color-dark)!important}.btn-secondary:hover:not(:disabled),.btn-cancel:hover:not(:disabled),.modal-secondary:hover:not(:disabled),.cancel-button:hover:not(:disabled){background-color:var(--button-secondary-hover)!important;border-color:var(--gray-400)!important}.btn-danger,.modal-danger,.btn-confirm-destructive{border-radius:var(--border-radius);font-weight:600;background-color:var(--button-danger-bg)!important;color:var(--button-danger-text)!important;border:1px solid var(--gray-400)!important}.btn-danger:hover:not(:disabled),.modal-danger:hover:not(:disabled),.btn-confirm-destructive:hover:not(:disabled){background-color:var(--button-danger-hover)!important}a{transition:var(--transition);text-decoration:none}input,select{border-radius:var(--border-radius);transition:var(--transition);border:1px solid #d1d5db;padding:2% 3%;font-family:inherit;font-size:100%}input:focus,select:focus{border-color:var(--primary-color);outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){.container{width:95%}:root{--public-banner-height:180px}.projects-hero,.pm-hero-banner,.project-hero,.le-header-section,.lots-header-section{padding:2rem 1rem!important}.modal,.modal-content,.forms-modal,.approval-modal,.quote-detail-modal,.customer-approval-modal,.schedule-modal{width:calc(100vw - 1rem);max-width:calc(100vw - 1rem)}.modal-overlay,.modal-backdrop,.forms-modal-overlay,.approval-modal-overlay{padding:.5rem}}@media (width<=480px){body{font-size:90%}}
