.site-nav{z-index:1000;background:#fff;border-bottom:1px solid #e6e6e6;position:sticky;top:0;box-shadow:0 2px 4px #0000000d}.site-nav-inner{justify-content:center;align-items:center;gap:24px;width:80%;min-height:70px;margin:0 auto;padding:12px 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:91px}.desktop-nav{flex:1;justify-content:center;align-items:center;gap:16px;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;font-weight:500}.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}.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;font-weight:500}.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:40px}.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}.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:72px}}@media (width<=480px){.site-nav-inner,.mobile-nav a,.mobile-actions{width:94%}.logo-image{height:65px}}.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:#d9e6f2;--color-light:#e6e7e8;--color-white:#fff;--color-accent:#628db5;--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:"Georgia", "Times New Roman", serif;--font-body:"Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;--duration:.8s;--easing:cubic-bezier(.25, .46, .45, .94)}.home{width:100%;overflow-x:hidden}.hero{width:100%;height:100vh;min-height:700px;margin-bottom:calc(var(--spacing-xxl) * .6667);align-items:center;margin-bottom:8rem;display:flex;position:relative;overflow:hidden}.hero-background{z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}.hero-image{object-fit:cover;z-index:0;width:95%;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero-overlay{margin-bottom:calc(var(--spacing-md) * .6667);z-index:1;background:#00000073;width:100%;height:100%;position:absolute;left:0}.hero-container{z-index:2;text-align:center;max-width:700px;padding:0 var(--spacing-lg);margin:0 auto;position:relative}.hero-content{opacity:0;animation:1s ease-out .3s forwards fadeInUp}.hero-label{letter-spacing:.3em;text-transform:uppercase;color:var(--color-white);margin-bottom:var(--spacing-md);font-size:.8rem;font-weight:600}.hero-heading{font-family:var(--font-heading);color:var(--color-white);margin-bottom:var(--spacing-md);letter-spacing:-.02em;font-size:clamp(2.5rem,8vw,4.5rem);font-weight:400;line-height:1.1}.hero-description{color:#ffffffe6;margin-bottom:var(--spacing-xl);font-size:1.1rem;font-weight:300;line-height:1.6}.hero-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin:0 auto;display:flex}.scroll-down{opacity:0;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;margin:0 auto;animation:1s ease-out .8s forwards fadeInUp;display:flex;position:absolute;bottom:2rem;left:0;right:0}.scroll-down p{letter-spacing:.2em;text-transform:uppercase;color:#ffffffb3;font-size:.75rem;font-weight:500}.scroll-icon{border:2px solid #ffffffb3;border-radius:12px;width:24px;height:40px;animation:2s ease-in-out infinite scrollBounce;position:relative}.scroll-icon:after{content:"";background:#ffffffb3;border-radius:1px;width:2px;height:10px;animation:2s ease-in-out infinite scrollDot;position:absolute;top:8px;left:50%;transform:translate(-50%)}@keyframes scrollBounce{0%,to{opacity:.5}50%{opacity:1}}@keyframes scrollDot{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(12px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.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{color:#fff;background:0 0;border-color:#fff}.btn-primary:hover{color:#fff;background:#ffffff26;transform:translateY(-2px)}.btn-secondary{color:#fff;background:0 0;border-color:#fff}.btn-secondary:hover{color:#fff;background:#ffffff26;transform:translateY(-2px)}.content-section{width:var(--content-width);max-width:var(--content-max-width);align-items:center;gap:var(--spacing-xxl);padding:var(--spacing-section) 0;grid-template-columns:1fr 1fr;margin:0 auto;display:grid}.content-section.reverse{direction:rtl}.content-section.reverse>*{direction:ltr}.featured-section{background:var(--color-secondary);padding:var(--spacing-xl);border-radius:0;box-shadow:0 8px 30px #0000001a;margin-bottom:var(--spacing-xxl)!important;margin-top:0!important}.featured-section.alt{background:var(--color-white)}.featured-section.alt .section-title,.featured-section.alt .section-subtitle{color:var(--color-primary)}.featured-section.alt .link-arrow{color:var(--color-accent)}.featured-section.alt .link-arrow:hover{color:var(--color-primary)}.featured-section.offset-left{transform:translate(-6%)}.featured-section.offset-right{transform:translate(6%)}.featured-section:first-of-type{margin-top:0!important}.featured-section:last-of-type{margin-bottom:0}.featured-section .section-image-container{border-radius:0;overflow:hidden}.content-section.featured-section{padding:calc(var(--spacing-section) * .75) 0;gap:calc(var(--spacing-xxl) * .75)}.content-section.featured-section .featured-section{padding:calc(var(--spacing-xl) * .75)}.content-section.featured-section{padding:calc(var(--spacing-section) * .5625) 0;gap:calc(var(--spacing-xxl) * .5625);padding-inline:clamp(.75rem,4vw,1.5rem)}.content-section.featured-section .section-image-container,.content-section.featured-section .section-image{min-height:281.25px}.content-section.featured-section .section-text-wrapper{padding:clamp(.75rem,2vw,1rem)}.featured-section .section-title,.featured-section .section-subtitle{color:var(--color-white)}.featured-section .link-arrow{color:var(--color-white);font-weight:600}.featured-section .link-arrow:hover{color:var(--color-primary)}.section-text-wrapper{padding:var(--spacing-lg) 0}.section-text-wrapper[data-animate]{opacity:0;transition:all .8s var(--easing);transform:translateY(30px)}.section-text-wrapper[data-animate].animated{opacity:1;transform:translateY(0)}.section-number{color:var(--color-accent);letter-spacing:.1em;margin-bottom:var(--spacing-sm);font-size:.85rem;font-weight:600;display:block}.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-header{flex-direction:column;gap:.433355rem;margin-bottom:0;display:flex}.section-header.lowered-title{margin-top:calc(var(--spacing-md) * .3333)}.section-header[data-animate]{opacity:0;transition:all .8s var(--easing);transform:translateY(20px)}.section-header[data-animate].animated{opacity:1;transform:translateY(0)}.section-title{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--color-primary);margin:.35rem 0 .166675rem;font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:400;line-height:1.35}.section-title em,.section-title i{font-style:italic;font-weight:400}.section-subtitle{margin:.5rem 0 var(--spacing-lg);color:var(--color-text-muted);font-size:1rem;font-weight:400;line-height:1.7}.section-description{color:var(--color-text-muted);margin-bottom:var(--spacing-lg);max-width:520px;font-size:.95rem;line-height:1.8}.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{color:var(--color-secondary)}.link-arrow:hover:after{transform:translate(5px)}.section-image-container{border-radius:4px;width:100%;min-height:500px;position:relative;overflow:hidden}.section-image-container[data-animate]{opacity:0;transition:all .8s var(--easing);transform:scale(.98)}.section-image-container[data-animate].animated{opacity:1;transform:scale(1)}.section-image{object-fit:cover;object-position:center;width:100%;height:100%;min-height:500px;transition:transform .6s var(--easing)}.section-image-container:hover .section-image{transform:scale(1.05)}@media (width>=1001px){.portfolio-grid{grid-auto-rows:1fr;grid-auto-flow:row;place-items:start center;grid-template-columns:repeat(2,275px)!important;justify-content:center!important;gap:.34375rem!important}.portfolio-card{aspect-ratio:1;justify-content:center;align-items:stretch;display:flex;width:275px!important;max-width:none!important;margin:0!important}.card-content{padding:calc(var(--spacing-md) * .625)!important}.card-title{font-size:1.25rem}.card-subtitle{font-size:1rem}}.portfolio-card.no-image{color:var(--color-primary);box-shadow:none;border:1px solid var(--color-secondary);background:var(--color-white)!important}.portfolio-card.no-image .card-image-bg,.portfolio-card.no-image .card-overlay{display:none!important}.portfolio-card.no-image .card-content{z-index:2;color:var(--color-primary);text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;padding:var(--spacing-lg) var(--spacing-md)!important}.portfolio-card.no-image .card-title{color:var(--color-primary)!important}.portfolio-card.no-image .card-subtitle{color:var(--color-text-muted)!important}.card-title{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.5rem;font-size:1.5rem;font-weight:400;color:var(--color-white)!important}.portfolio-card .card-content .card-title{flex-direction:column;justify-content:center;align-items:center;gap:.45rem;display:flex}.portfolio-card .card-content .card-title svg{font-size:1.72rem;line-height:1;display:block}.feature-card{text-align:center;background:var(--color-light);transition:all .4s var(--easing);opacity:0;border:2px solid #0000;justify-content:center;align-items:center;width:auto;min-width:0;margin:0;padding:.5rem .6rem .9rem;display:flex;transform:translateY(6px)}.features-grid .feature-card{justify-content:center;align-items:center;display:flex}.features-grid .feature-card .feature-title{text-align:center;margin:0;display:block}@media (width>=1001px){.features-grid{grid-template-columns:repeat(3,1fr)!important;gap:.25rem!important;max-width:720px!important}.feature-card{min-height:56px!important;padding:.75rem .6rem 1rem!important}.feature-title{font-size:.26rem!important;font-weight:200!important}}.feature-title{font-family:var(--font-heading);color:var(--color-primary);letter-spacing:.02em;transition:color .25s var(--easing);word-break:break-word;overflow-wrap:anywhere;hyphens:auto;margin:0;font-weight:200;line-height:1.2;font-size:.245rem!important}.feature-card .feature-title{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;width:100%;height:100%;display:flex}.feature-card .feature-title svg{align-self:center;margin:0 auto 6%;line-height:1;display:block;font-size:1.32rem!important}.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[data-animate]{opacity:0;transition:all .8s var(--easing);transform:translate(-30px)}.contact-image[data-animate].animated{opacity:1;transform:translate(0)}.contact-image img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .6s var(--easing)}.contact-image:hover img{transform:scale(1.03)}.contact-content{padding:var(--spacing-xxl);background:var(--color-light);flex-direction:column;justify-content:center;display:flex}.contact-content[data-animate]{opacity:0;transition:all .8s var(--easing) .2s;transform:translate(30px)}.contact-content[data-animate].animated{opacity:1;transform:translate(0)}.contact-content .section-kicker{margin-bottom:var(--spacing-md);color:#000}.contact-title{font-family:var(--font-heading);margin-bottom:var(--spacing-md);color:var(--color-primary);letter-spacing:-.01em;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;border-color:#000}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (width<=1000px){:root{--content-width:90%}.hero{height:auto;min-height:600px;padding:var(--spacing-section) 0}.hero{min-height:60vh}.section-text-wrapper{order:2;margin-top:0;margin-left:0;margin-right:0}:root{--content-width:90%;--spacing-section:5rem;--spacing-xxl:4rem}.hero{min-height:550px;padding:var(--spacing-section) 0}.hero-heading{font-size:clamp(1.8rem,5vw,3rem)}.content-section{gap:var(--spacing-lg);grid-template-columns:1fr}.content-section.reverse{direction:ltr;grid-template-columns:1fr}.section-text-wrapper{order:2;margin-top:0;margin-left:0;margin-right:0}.section-image-container{order:1;min-height:400px}.section-image{min-height:400px}.contact-wrapper{grid-template-columns:1fr}.contact-image{min-height:300px}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-card{aspect-ratio:4/3}.card-content{padding:var(--spacing-sm) var(--spacing-xs) var(--spacing-sm) .75rem;padding-left:.75rem!important}.card-title{overflow-wrap:break-word;white-space:normal;letter-spacing:0!important;font-size:.6rem!important;line-height:1.3!important}.card-subtitle{font-size:clamp(.8rem,2.4vw,.95rem)}.features-grid{grid-template-columns:repeat(2,1fr)}.featured-section.offset-left,.featured-section.offset-right{transform:none}}@media (width<=768px){:root{--content-width:92%;--spacing-section:3rem;--spacing-xxl:2.5rem;--spacing-lg:2rem}.hero{height:auto;min-height:500px;padding:var(--spacing-lg) 0;margin-bottom:var(--spacing-lg)}.hero-image{object-fit:cover;object-position:center;transform:translate(-50%)}.hero-container{padding:var(--spacing-lg) 0;max-width:100%}.hero-background{background:var(--color-white)}.hero-image{display:none}.hero-label{color:var(--color-secondary)}.hero-heading{color:var(--color-primary)}.hero-description{color:var(--color-text-muted)}.hero-buttons .btn{border-color:var(--color-primary);color:var(--color-primary);background:0 0}.hero-buttons .btn:hover{color:var(--color-primary);background:#4c4d4f14;transform:translateY(-2px)}.hero-heading{margin-bottom:var(--spacing-md);font-size:clamp(1.5rem,5vw,2.5rem)}.hero-label{margin-bottom:var(--spacing-sm);font-size:.7rem}.hero-description{margin-bottom:var(--spacing-md);font-size:1rem}.hero-buttons{flex-direction:column;gap:.5rem;width:100%}.hero-buttons .btn{width:100%;padding:.8rem 1.5rem;font-size:.85rem}.scroll-down{display:none}.hero-overlay{background:#00000040}.section-title{font-size:clamp(1.5rem,3vw,2rem)}.section-subtitle{font-size:.95rem}.section-image-container,.section-image{min-height:300px}.portfolio-grid{gap:var(--spacing-md);grid-template-columns:1fr}.section-header.center{margin-bottom:var(--spacing-lg)}.section-header.center .section-title{font-size:clamp(1.3rem,4.5vw,1.8rem)}.section-header.center .section-kicker{letter-spacing:.15em}.card-title{letter-spacing:0!important;font-size:.55rem!important}.card-subtitle{font-size:.65rem}.features-grid{grid-template-columns:1fr}.feature-card{padding:var(--spacing-md);min-height:auto}.contact-content{padding:var(--spacing-lg)}.contact-title{font-size:clamp(1.5rem,3vw,2rem)}.contact-description{font-size:.95rem}.feature-title{line-height:1.35;font-size:clamp(.355rem,1.425vw,.4125rem)!important;font-weight:200!important}.featured-section.offset-left,.featured-section.offset-right{transform:none}}@media (width<=480px){:root{--content-width:94%;--spacing-section:2rem;--spacing-xxl:1.5rem;--spacing-lg:1.5rem;--spacing-md:1rem}.hero{min-height:55vh;padding:var(--spacing-md) 0;margin-bottom:var(--spacing-md)}.hero-image{transform:translate(-50%)}.hero-overlay{background:#0003}.hero-container{padding:var(--spacing-md) 0}.hero-heading{margin-bottom:var(--spacing-sm);font-size:clamp(1.25rem,5vw,2rem)}.hero-label{margin-bottom:var(--spacing-xs);font-size:.65rem}.hero-description{margin-bottom:var(--spacing-md);font-size:.9rem;line-height:1.5}.hero-buttons{flex-direction:column;gap:.5rem;width:100%}.hero-buttons .btn{width:100%;padding:.7rem 1.25rem;font-size:.75rem}.btn{padding:.7rem 1.5rem;font-size:.75rem}.section-title{font-size:clamp(1.25rem,3vw,1.8rem)}.section-subtitle{font-size:.9rem}.section-kicker{font-size:.65rem}.section-image-container,.section-image{min-height:250px}.portfolio-card{aspect-ratio:1}.card-title{letter-spacing:.02em!important;font-size:1rem!important}.feature-card{padding:var(--spacing-md);min-height:auto}.feature-title{font-size:clamp(.3375rem,1.6875vw,.375rem);line-height:1.35;font-weight:200!important}.features-grid .feature-card,.features-grid .feature-card .feature-title{text-align:center!important;justify-content:center!important;align-items:center!important;width:100%!important;height:100%!important;margin:0!important;display:flex!important}.contact-wrapper{min-height:auto}.contact-image{min-height:200px}.contact-content{padding:var(--spacing-md)}.contact-title{font-size:clamp(1.25rem,3vw,1.8rem)}.contact-description{font-size:.9rem}.featured-section{padding:var(--spacing-md)}}@media (width>=1001px){.portfolio-section .container .portfolio-grid{grid-template-columns:repeat(2,316px)!important;justify-content:center!important;justify-items:center!important;gap:1rem!important}.portfolio-section .container .portfolio-grid .portfolio-card{width:316px!important;max-width:none!important;margin:0!important}.portfolio-section .container .portfolio-grid .portfolio-card .card-content{padding:calc(var(--spacing-md) * .75)!important}.portfolio-section .container .portfolio-grid{gap:calc(var(--spacing-lg) * .1)!important;column-gap:calc(var(--spacing-lg) * .1)!important;row-gap:calc(var(--spacing-lg) * .1)!important;justify-content:center!important}.portfolio-section .container .portfolio-grid .portfolio-card{margin:0!important}.portfolio-section .container .portfolio-grid .portfolio-card .card-content{padding-left:calc(var(--spacing-xs) * .5)!important;padding-right:calc(var(--spacing-xs) * .5)!important}}.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}.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-content{flex-direction:column;align-items:center;gap:10px;display:flex}.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-link:hover{color:#aab2a6;text-decoration:underline}.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{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)}}.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{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;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}.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:#628db5;--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:"Georgia", "Times New Roman", serif;--font-body:"Segoe UI", -apple-system, BlinkMacSystemFont, 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)}.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{background-color:var(--color-white);flex-direction:column;min-height:100vh;display:flex}.real-hero-banner{width:100%;height:auto;min-height:auto;padding:var(--spacing-section) var(--spacing-lg);text-align:center;margin-bottom:var(--spacing-xl);background:linear-gradient(145deg,#aab2a6,#8a9287);justify-content:center;align-items:center;display:flex}.real-hero-content{width:var(--content-width);flex-direction:column;justify-content:center;align-items:center;max-width:900px;display:flex}.real-hero-title{font-family:var(--font-heading);color:var(--color-white);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400;line-height:1.2}.realizations-intro{background-color:var(--color-white);width:100%;padding:var(--spacing-xl) var(--spacing-lg);justify-content:center;display:flex}.realizations-intro-content{width:var(--content-width);max-width:var(--content-max-width);text-align:center}.realizations-intro-text{color:var(--color-text);max-width:800px;margin:0 auto;font-size:1.1rem;line-height:1.8}.realizations-gallery-section{background-color:var(--color-white);width:100%;padding:var(--spacing-xl) 0;align-items:center;gap:var(--spacing-lg);flex-direction:column;display:flex}.realizations-gallery-container{align-items:center;gap:var(--spacing-lg);width:100%;max-width:100vw;padding:0 var(--spacing-lg);justify-content:center;display:flex}.realizations-gallery{gap:var(--spacing-lg);justify-content:center;width:100%;max-width:1400px;display:flex}.gallery-image-item{width:90vw;max-width:1000px;height:70vh;transition:transform .3s var(--easing), box-shadow .3s var(--easing);border-radius:12px;flex-shrink:0;overflow:hidden;box-shadow:0 8px 24px #00000014}.gallery-image-item:hover{transform:scale(1.01);box-shadow:0 14px 36px #0000001f}.gallery-image{object-fit:cover;width:100%;height:100%;display:block}.gallery-arrow{color:#333;cursor:pointer;width:56px;height:56px;transition:all .3s var(--easing);background-color:#0000;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.gallery-arrow:hover{background-color:#0000000d;transform:scale(1.08)}.gallery-arrow:active{transform:scale(.96)}.gallery-arrow-left svg{position:relative;left:3px}.gallery-arrow-right svg{position:relative;right:0}.gallery-counter{color:var(--color-primary);letter-spacing:.05em;font-size:1.1rem;font-weight:600}.gallery-counter-hidden{display:none}.realizations-hero-subtitle{color:#ffffffe0;letter-spacing:.03em;margin:10px 0 0;font-size:clamp(1rem,2vw,1.25rem);font-style:italic;font-weight:300}.realizations-portfolio-text-section{width:100%;padding:var(--spacing-lg) var(--spacing-lg) 0;justify-content:center;display:flex}.realizations-portfolio-text{color:var(--color-text);text-align:center;max-width:800px;margin:0;font-size:1.05rem;line-height:1.7}.realizations-portfolio-grid-section{width:100%;padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-xl);justify-content:center;display:flex}.realizations-portfolio-grid{gap:var(--spacing-md);grid-template-columns:1fr 1fr;width:100%;max-width:500px;display:grid}.realizations-portfolio-grid-item{aspect-ratio:4/3;transition:transform .3s var(--easing), box-shadow .3s var(--easing);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #00000014}.realizations-portfolio-grid-item:hover{transform:scale(1.02);box-shadow:0 14px 36px #0000001f}.realizations-portfolio-grid-img{object-fit:contain;width:100%;height:100%;display:block}@media (width<=600px){.realizations-portfolio-grid{grid-template-columns:1fr}.realizations-portfolio-text-section{padding:var(--spacing-md) var(--spacing-md) 0}.realizations-portfolio-grid-section{padding:var(--spacing-md) var(--spacing-md) var(--spacing-lg)}}@media (width<=1024px){.real-hero-banner{padding:var(--spacing-lg) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.real-hero-content{max-width:100%}.real-hero-title{font-size:clamp(2rem,5vw,3rem)}.realizations-intro{padding:var(--spacing-lg) var(--spacing-lg)}.realizations-gallery-section{padding:var(--spacing-lg) 0}.realizations-gallery-container{padding:0 var(--spacing-md);gap:var(--spacing-md)}.gallery-image-item{width:80vw;height:55vh}}@media (width<=768px){.real-hero-banner{padding:var(--spacing-lg) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.real-hero-title{font-size:clamp(1.5rem,5vw,2.5rem)}.realizations-intro{padding:var(--spacing-lg) var(--spacing-md)}.realizations-intro-text{font-size:1rem}.realizations-gallery-section{padding:var(--spacing-lg) 0}.realizations-gallery-container{padding:0 var(--spacing-sm);gap:var(--spacing-md)}.gallery-image-item{width:85vw;height:60vh}.gallery-arrow{width:48px;height:48px}}@media (width<=480px){.real-hero-banner{padding:var(--spacing-md) var(--spacing-md);margin-bottom:var(--spacing-md)}.real-hero-title{font-size:clamp(1.25rem,5vw,2rem)}.realizations-intro{padding:var(--spacing-md) var(--spacing-sm)}.realizations-intro-text{font-size:.95rem;line-height:1.6}.realizations-gallery-section{padding:var(--spacing-md) 0}.realizations-gallery-container{padding:0 var(--spacing-xs);gap:var(--spacing-sm)}.gallery-image-item{border-radius:8px;width:90vw;height:50vh}.gallery-arrow{width:44px;height:44px}.gallery-arrow svg{font-size:20px}}.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{background-color:var(--color-white);min-height:100vh;color:var(--color-text);width:100%}.project-management-loading{min-height:60vh;color:var(--color-text);justify-content:center;align-items:center;font-size:1.25rem;display:flex}.pm-hero-banner{width:100%;height:auto;min-height:auto;padding:var(--spacing-section) var(--spacing-lg);text-align:center;margin-bottom:var(--spacing-xl);background:linear-gradient(145deg,#aab2a6,#8a9287);justify-content:center;align-items:center;display:flex}.pm-hero-content{width:var(--content-width);flex-direction:column;justify-content:center;align-items:center;max-width:900px;display:flex}.pm-hero-title{font-family:var(--font-heading);color:var(--color-white);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400;line-height:1.2}.pm-intro-section{width:100%;padding:var(--spacing-section) var(--spacing-lg);background:linear-gradient(#f7f9fb 0%,#fff 100%)}.pm-intro-container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.pm-intro-content{gap:var(--spacing-xl);flex-direction:column;display:flex}.pm-heading-section{text-align:center;max-width:800px;margin:0 auto}.pm-main-heading{letter-spacing:.01em;color:var(--color-primary);margin:0 0 20px;font-size:clamp(2.1rem,4vw,2.8rem);font-weight:700;line-height:1.15}.pm-pill-row{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:16px;display:flex}.pm-pill{color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em;background:#0c3d2d14;border:1px solid #0c3d2d29;border-radius:999px;padding:10px 16px;font-size:.95rem;font-weight:600}.pm-tagline{color:var(--color-primary);margin:0;font-size:clamp(1.2rem,2vw,1.5rem);font-style:italic;font-weight:400}.pm-images-grid{gap:var(--spacing-lg);width:100%;margin:var(--spacing-lg) 0;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid;position:relative}.pm-image-card{width:100%;transition:transform .3s var(--easing), box-shadow .3s var(--easing);z-index:1;position:relative}.pm-image-card:hover{z-index:2;transform:translateY(-6px)scale(1.02)}.pm-image-container{aspect-ratio:4/3;background-color:var(--color-white);width:100%;transition:box-shadow .3s var(--easing);border:1px solid #0c3d2d14;border-radius:12px;justify-content:center;align-items:center;display:flex;overflow:hidden;box-shadow:0 8px 24px #00000014}.pm-image-card:hover .pm-image-container{box-shadow:0 14px 36px #0000001f}.pm-image{object-fit:cover;width:100%;height:100%;display:block}.pm-intro-paragraph{text-align:center;width:100%;max-width:1000px;margin:0 auto}.pm-intro-paragraph p{color:var(--color-text);margin:0;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.8}.pm-advantages-section{width:100%;padding:var(--spacing-section) var(--spacing-lg);background-color:#f7f9fb}.pm-advantages-container{width:var(--content-width);flex-direction:column;gap:16px;max-width:1000px;margin:0 auto;display:flex}.pm-intro-text{color:var(--color-text);margin:0 0 32px;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7}.pm-advantages-heading{color:var(--color-primary);margin:0;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;line-height:1.4}.pm-advantages-list{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:8px 0 24px;padding:0;list-style:none;display:grid}.pm-advantages-list li{color:var(--color-text);background:var(--color-white);transition:transform .25s var(--easing), box-shadow .25s var(--easing), border-color .25s var(--easing);text-align:center;border:1px solid #0c3d2d1f;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:20px 18px;font-size:clamp(1rem,1.5vw,1.05rem);line-height:1.6;display:flex;position:relative;box-shadow:0 8px 20px #0000000a}.pm-adv-emoji{margin:0 0 .5rem;font-size:1.8rem;line-height:1;display:inline-block}.pm-adv-text{display:block}.pm-advantages-list li:before{content:none}.pm-advantages-list li:hover{border-color:#0c3d2d33;transform:translateY(-4px);box-shadow:0 12px 28px #00000014}@media (width>=750px){.pm-advantages-list li:nth-child(7){grid-column:2/3}}.pm-separator{flex-direction:column;gap:8px;max-width:560px;margin:24px auto;display:flex}.pm-separator-line{background-color:var(--color-secondary);width:100%;height:1px}.pm-pricing-text{color:var(--color-text);margin:0;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7}.pm-contact-link-wrapper{justify-content:center;margin-top:24px;display:flex}.pm-contact-link{color:var(--color-primary);border:2px solid var(--color-primary);transition:all .3s var(--easing);text-transform:uppercase;letter-spacing:.05em;background-color:#0000;border-radius:4px;padding:12px 28px;font-size:1.1rem;font-weight:600;text-decoration:none;display:inline-block}.pm-contact-link:hover{background-color:var(--color-primary);color:var(--color-white);transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.pm-contact-link:focus-visible{outline:none;box-shadow:0 0 0 3px #4c4d4f33}.pm-gallery-section{background-color:var(--color-light);width:100%;padding:var(--spacing-section) 0}.pm-gallery-container{width:var(--content-width);max-width:var(--content-max-width);margin:0 auto}.pm-gallery-heading{color:var(--color-primary);text-align:center;margin:0 0 40px;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;line-height:1.4}.pm-gallery-grid{grid-template-columns:repeat(3,1fr);gap:32px;width:100%;display:grid}.pm-gallery-card{transition:transform .3s var(--easing), box-shadow .3s var(--easing);flex-direction:column;gap:16px;display:flex}.pm-gallery-card:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 8px 24px #00000014}.pm-gallery-image-container{aspect-ratio:4/3;background-color:var(--color-white);border:2px dashed var(--color-secondary);width:100%;transition:box-shadow .3s var(--easing), border-color .3s var(--easing);border-radius:12px;justify-content:center;align-items:center;display:flex;overflow:hidden;box-shadow:0 4px 12px #0000001a}.pm-gallery-card:hover .pm-gallery-image-container{border-color:var(--color-accent);box-shadow:0 8px 24px #00000026}.pm-gallery-image{object-fit:cover;width:100%;height:100%;display:block}.pm-gallery-caption{color:var(--color-text);text-align:center;margin:0;font-size:clamp(1rem,1.5vw,1.1rem);font-weight:500}@media (width<=1200px){.pm-hero-banner{padding:var(--spacing-lg) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.pm-hero-content{max-width:100%}.pm-hero-title{font-size:clamp(2rem,5vw,3rem)}.pm-images-grid{gap:24px}}@media (width<=992px){.pm-hero-banner{padding:var(--spacing-lg) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.pm-images-grid{flex-direction:column;gap:24px;padding:0}.pm-image-card{max-width:100%;margin:0!important}.pm-image-card:first-child,.pm-image-card:nth-child(2),.pm-image-card:nth-child(3){z-index:1;margin:0!important}.pm-image-card:hover{transform:translateY(-8px)scale(1.02)}.pm-gallery-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (width<=768px){.pm-hero-banner{padding:var(--spacing-lg) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.pm-hero-title{font-size:clamp(1.5rem,5vw,2.5rem)}.pm-intro-section,.pm-advantages-section,.pm-gallery-section{padding:var(--spacing-lg) var(--spacing-md)}.pm-intro-content{gap:40px}.pm-heading-section{padding:0 10px}.pm-images-grid{flex-direction:column;gap:24px;padding:0}.pm-image-card{max-width:100%;margin:0!important}.pm-image-card:first-child,.pm-image-card:nth-child(2),.pm-image-card:nth-child(3){z-index:1;margin:0!important}.pm-image-card:hover{transform:translateY(-8px)scale(1.02)}.pm-image-container{aspect-ratio:16/10}.pm-intro-paragraph{padding:0 10px}.pm-intro-paragraph p{text-align:center;font-size:.95rem}.pm-gallery-grid{grid-template-columns:1fr;gap:24px}.pm-contact-link{text-align:center;width:100%;padding:14px 24px}.pm-contact-link-wrapper{justify-content:center}.pm-advantages-container{padding:0 10px}.pm-main-heading{font-size:clamp(1.5rem,4vw,2.2rem)}}@media (width<=480px){.pm-hero-banner{padding:var(--spacing-md) var(--spacing-sm);margin-bottom:var(--spacing-md)}.pm-hero-title{font-size:clamp(1.25rem,5vw,2rem);line-height:1.3}.pm-intro-section,.pm-advantages-section,.pm-gallery-section{padding:var(--spacing-md) var(--spacing-sm)}.pm-main-heading{font-size:clamp(1.25rem,4vw,1.8rem);line-height:1.3}.pm-tagline{font-size:1.1rem}.pm-intro-paragraph p,.pm-intro-text,.pm-pricing-text{font-size:.9rem}.pm-advantages-heading,.pm-gallery-heading{font-size:clamp(1.2rem,4vw,1.6rem)}.pm-advantages-list li{padding-left:20px;font-size:.9rem}.pm-images-grid,.pm-gallery-grid{gap:20px}.pm-image-container,.pm-gallery-image-container{border-radius:var(--border-radius)}}.pm-image-city{text-align:center;color:var(--color-primary);letter-spacing:.02em;margin-top:.75rem;margin-bottom:0;font-size:1rem;font-weight:600}.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{justify-content:flex-end;gap:.5rem;padding:.5rem 1rem 1rem;display:flex}.document-row{background:#fff;border-radius:8px;align-items:center;gap:1rem;padding:1rem 1.5rem;transition:box-shadow .2s;display:flex;box-shadow:0 1px 4px #0000001a}.document-row:hover{box-shadow:0 2px 8px #00000026}.document-icon{color:#666;font-size:2rem}.document-details{flex:1;min-width:0}.document-row .document-name{margin:0 0 .25rem;font-size:1rem}.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}.btn-icon{cursor:pointer;color:#666;background:0 0;border:none;padding:.5rem;font-size:1.25rem;transition:color .2s}.btn-icon:hover{color:#1976d2}.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}.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;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{flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px;display:flex}.rbc-toolbar .rbc-toolbar-label{text-align:center;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;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{flex-direction:column}}.rbc-event{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{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{flex-direction:row;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{user-select:none;border:1px solid #ddd;flex-direction:column;flex:1 0 0;width:100%;height:100%;display:flex;position:relative}.rbc-month-header{flex-direction:row;display:flex}.rbc-month-row{flex-direction:column;flex:1 0 0;height:100%;display:flex;position:relative;overflow:hidden}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{text-align:right;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{flex-direction:row;flex:1 0 0;display:flex;position:absolute;inset:0 1px 0 0;overflow:hidden}.rbc-day-bg{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;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{flex-direction:column;flex:1 0 0;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{flex-direction:column;min-height:100%;display:flex}.rbc-time-column .rbc-timeslot-group{flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;flex-flow:column;min-height:40px;display:flex}.rbc-time-gutter,.rbc-header-gutter{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;flex-flow:column wrap;align-items:flex-start;min-height:20px;max-height:100%;display:flex;position:absolute;overflow:hidden}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;width:auto;padding-right:5px}.rbc-day-slot .rbc-event-content{word-wrap:break-word;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{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{flex:1 1 0;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{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;flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{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{box-sizing:border-box;min-height:20px}.rbc-time-header{flex-direction:row;flex:none;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;flex-direction:column;flex:1;min-width:0;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;flex-shrink:0}.rbc-time-content{border-top:2px solid #ddd;flex:1 0;align-items:flex-start;width:100%;display:flex;position:relative;overflow-y:auto}.rbc-time-content>.rbc-time-gutter{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{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{flex-direction:column;display:flex}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.rbc-calendar{box-sizing:border-box;flex-direction:column;align-items:stretch;height:100%;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;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;user-select:text;background:0 0;border:none;margin:0;padding:0}.rbc-row-content{user-select:none;z-index:4;position:relative}.rbc-row-content-scrollable{flex-direction:column;height:100%;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}}.customer-approval-modal-overlay{backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.customer-approval-modal{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;display:flex;box-shadow:0 25px 50px -12px #00000040}.customer-approval-modal .modal-header{text-align:center;border-bottom:2px solid #f1f5f9;flex-direction:column;align-items:center;padding:32px 32px 24px;display:flex;position:relative}.customer-approval-modal .header-icon{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:16px;font-size:32px;display:flex;box-shadow:0 10px 20px #10b9814d}.customer-approval-modal .modal-header h2{color:#1e293b;letter-spacing:-.5px;margin:0;font-size:24px;font-weight:800}.customer-approval-modal .close-button{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;font-size:24px;transition:all .2s;display:flex;position:absolute;top:24px;right:24px}.customer-approval-modal .close-button:hover:not(:disabled){color:#475569;background:#f1f5f9}.customer-approval-modal .close-button:disabled{opacity:.5;cursor:not-allowed}.customer-approval-modal .customer-approval-modal-content{flex:1;padding:24px 32px;overflow-y:auto}.customer-approval-modal .quote-summary{background:#f8fafc;border-radius:12px;margin-bottom:24px;padding:20px}.customer-approval-modal .summary-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.customer-approval-modal .summary-row:last-child{border-bottom:none}.customer-approval-modal .summary-row.total{border-top:2px solid #cbd5e1;border-bottom:none;margin-top:8px;padding-top:16px}.customer-approval-modal .summary-row .label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.customer-approval-modal .summary-row .value{color:#1e293b;font-size:15px;font-weight:600}.customer-approval-modal .summary-row .quote-number{color:#3b82f6;font-family:Monaco,Consolas,monospace;font-weight:700}.customer-approval-modal .summary-row .amount{color:#16a34a;font-size:20px;font-weight:800}.customer-approval-modal .info-notice{background:#eff6ff;border:2px solid #bfdbfe;border-radius:12px;gap:12px;margin-bottom:24px;padding:16px;display:flex}.customer-approval-modal .info-icon{color:#3b82f6;flex-shrink:0;font-size:24px}.customer-approval-modal .info-notice p{color:#1e40af;margin:0;font-size:14px;font-weight:500;line-height:1.6}.customer-approval-modal .acknowledgment-section{background:#fefce8;border:2px solid #fde047;border-radius:12px;padding:20px}.customer-approval-modal .checkbox-container{cursor:pointer;user-select:none;align-items:flex-start;gap:12px;display:flex;position:relative}.customer-approval-modal .checkbox-container input[type=checkbox]{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.customer-approval-modal .checkmark{background:#fff;border:2px solid #cbd5e1;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.customer-approval-modal .checkbox-container:hover .checkmark{border-color:#16a34a}.customer-approval-modal .checkbox-container input:checked~.checkmark{background:#16a34a;border-color:#16a34a}.customer-approval-modal .checkbox-container input:checked~.checkmark:after{content:"✓";color:#fff;font-size:16px;font-weight:700}.customer-approval-modal .checkbox-label{color:#854d0e;font-size:15px;font-weight:600;line-height:1.5}.customer-approval-modal .modal-footer{border-top:2px solid #f1f5f9;justify-content:flex-end;gap:12px;padding:24px 32px;display:flex}.customer-approval-modal .btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:120px;padding:14px 28px;font-size:15px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.customer-approval-modal .btn-secondary{color:#64748b;background:#fff;border:2px solid #e2e8f0}.customer-approval-modal .btn-secondary:hover:not(:disabled){color:#475569;background:#f8fafc;border-color:#cbd5e1}.customer-approval-modal .btn-approve{color:#fff;background:linear-gradient(135deg,#16a34a 0%,#15803d 100%);box-shadow:0 4px 6px -1px #16a34a33}.customer-approval-modal .btn-approve:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 15px -3px #16a34a4d}.customer-approval-modal .btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.customer-approval-modal .spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin}@media (width<=640px){.customer-approval-modal{border-radius:16px;max-height:95vh}.customer-approval-modal .modal-header{padding:24px 20px 20px}.customer-approval-modal .header-icon{width:56px;height:56px;font-size:28px}.customer-approval-modal .modal-header h2{font-size:20px}.customer-approval-modal .customer-approval-modal-content{padding:20px}.customer-approval-modal .modal-footer{flex-direction:column;padding:20px}.customer-approval-modal .btn{width:100%}}.customer-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}.customer-quote-approval-page .page-header{border-bottom:2px solid #0000000d;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:40px;padding-bottom:24px;display:flex}.customer-quote-approval-page .header-content{flex:1}.customer-quote-approval-page .page-title{color:#1e293b;letter-spacing:-1px;margin:0 0 12px;font-size:36px;font-weight:800}.customer-quote-approval-page .page-subtitle{color:#64748b;margin:0;font-size:16px;font-weight:500}.customer-quote-approval-page .btn-refresh{color:#64748b;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;width:56px!important;height:56px!important}.customer-quote-approval-page .btn-refresh svg{width:32px!important;height:32px!important}.customer-quote-approval-page .btn-refresh:hover:not(:disabled){color:#3b82f6;background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px)}.customer-quote-approval-page .btn-refresh:disabled{opacity:.5;cursor:not-allowed}.customer-quote-approval-page .btn-refresh .spinning{animation:1s linear infinite spin}.customer-quote-approval-page .payment-info-card{background:linear-gradient(90deg,#eff6ff,#fff);border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:24px;margin-bottom:32px;padding:24px;display:flex;box-shadow:0 4px 6px -1px #3b82f61a}.customer-quote-approval-page .payment-info-icon{color:#fff;background:#3b82f6;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;display:flex;box-shadow:0 4px 6px -1px #3b82f64d}.customer-quote-approval-page .payment-info-content{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:center;gap:24px;display:flex}.customer-quote-approval-page .payment-info-content h3{color:#1e3a8a;margin:0 0 4px;font-size:18px;font-weight:700}.customer-quote-approval-page .payment-info-content p{color:#1e40af;max-width:600px;margin:0;font-size:14px;line-height:1.5}.customer-quote-approval-page .btn-payment-link{color:#fff;white-space:nowrap;background:#2563eb;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 6px -1px #2563eb33}.customer-quote-approval-page .btn-payment-link:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 6px 8px -1px #2563eb4d}.customer-quote-approval-page .search-bar{background:#fff;border-radius:12px;align-items:center;gap:12px;margin-bottom:32px;padding:16px 20px;display:flex;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.customer-quote-approval-page .search-icon{color:#94a3b8;font-size:24px}.customer-quote-approval-page .search-input{color:#1e293b;background:0 0;border:none;flex:1;padding:8px 0;font-size:15px}.customer-quote-approval-page .search-input:focus{outline:none}.customer-quote-approval-page .search-input::placeholder{color:#94a3b8}.customer-quote-approval-page .error-message{text-align:center;color:#b91c1c;background:#fef2f2;border:2px solid #fecaca;border-radius:12px;margin-bottom:32px;padding:24px}.customer-quote-approval-page .error-message p{margin:0 0 16px;font-weight:600}.customer-quote-approval-page .btn-retry{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:10px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .2s}.customer-quote-approval-page .btn-retry:hover{background:#b91c1c;transform:translateY(-1px)}.customer-quote-approval-page .loading-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;display:flex}.customer-quote-approval-page .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}.customer-quote-approval-page .loading-container p{color:#64748b;margin-top:24px;font-size:16px;font-weight:500}.customer-quote-approval-page .empty-state{text-align:center;color:#94a3b8;background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex;box-shadow:0 4px 6px -1px #0000000d}.customer-quote-approval-page .empty-icon{color:#cbd5e1;margin-bottom:24px;font-size:64px}.customer-quote-approval-page .empty-state h3{color:#475569;margin:0 0 12px;font-size:24px;font-weight:700}.customer-quote-approval-page .empty-state p{color:#94a3b8;margin:0;font-size:16px;font-weight:500}.customer-quote-approval-page .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}.customer-quote-approval-page .quotes-table{border-collapse:separate;border-spacing:0;width:100%}.customer-quote-approval-page .quotes-table thead{background:#f8fafc}.customer-quote-approval-page .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}.customer-quote-approval-page .quotes-table tbody tr{transition:all .2s}.customer-quote-approval-page .quotes-table tbody tr:hover{background-color:#f8fafc}.customer-quote-approval-page .quotes-table td{color:#334155;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:20px 24px;font-size:15px}.customer-quote-approval-page .quotes-table tbody tr:last-child td{border-bottom:none}.customer-quote-approval-page .quote-number{color:#3b82f6;font-family:Monaco,Consolas,monospace;font-weight:700}.customer-quote-approval-page .amount{color:#1e293b;font-feature-settings:"tnum";font-weight:700}.customer-quote-approval-page .actions{justify-content:flex-end;gap:12px;display:flex}.customer-quote-approval-page .btn-action{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0;font-size:0;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;width:56px!important;height:56px!important}.customer-quote-approval-page .btn-action svg{width:32px!important;height:32px!important}.customer-quote-approval-page .btn-view{color:#64748b;background:#fff;border:2px solid #e2e8f0}.customer-quote-approval-page .btn-view:hover{color:#3b82f6;background:#f1f5f9;border-color:#bfdbfe;transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000000d}.customer-quote-approval-page .btn-approve{color:#16a34a;background:#f0fdf4;border:2px solid #bbf7d0}.customer-quote-approval-page .btn-approve:hover:not(:disabled){color:#fff;background:#16a34a;border-color:#16a34a;transform:translateY(-2px);box-shadow:0 4px 6px -1px #16a34a33}.customer-quote-approval-page .btn-action:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}@media (width<=768px){.customer-quote-approval-page{padding:20px 16px}.customer-quote-approval-page .page-title{font-size:28px}.customer-quote-approval-page .page-header{flex-direction:column}.customer-quote-approval-page .btn-refresh{width:100%}.customer-quote-approval-page .quotes-table thead{display:none}.customer-quote-approval-page .quotes-table,.customer-quote-approval-page .quotes-table tbody,.customer-quote-approval-page .quotes-table tr,.customer-quote-approval-page .quotes-table td{width:100%;display:block}.customer-quote-approval-page .quotes-table tr{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;overflow:hidden;box-shadow:0 4px 6px -1px #00000005}.customer-quote-approval-page .quotes-table td{text-align:right;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.customer-quote-approval-page .quotes-table td:last-child{background:#f8fafc;border-bottom:none;padding:12px 20px}.customer-quote-approval-page .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}.customer-quote-approval-page .actions{justify-content:space-between;width:100%}.customer-quote-approval-page .btn-action{flex:1;height:52px;font-size:20px}.customer-quote-approval-page .btn-view{width:auto;padding:12px 20px}}@media (width<=480px){.customer-quote-approval-page .page-title{font-size:24px}.customer-quote-approval-page .quotes-table td{padding:12px 16px;font-size:14px}}.project-overview-page{background-color:var(--color-white,#fff);min-height:100vh}.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(--tertiary-color,#628db5);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;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:#628db5;--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);--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)}body{color:var(--text-primary);background-color:var(--background-color);font-family:Arial,Helvetica,sans-serif;line-height:1.6;overflow-x:hidden}.container{width:90%;max-width:1400px;margin:0 auto;padding:24px 0}h1,h2,h3,h4,h5,h6{margin-bottom:1%;font-weight:600}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%}}@media (width<=480px){body{font-size:90%}}
