.home-container{background:#f5f9ff;color:#12263f;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.hero-section{margin:0 auto;max-width:960px;padding:4rem 1.5rem 3.5rem;text-align:center}.app-tagline-small{color:#4f83cc;font-size:.95rem;font-weight:600;letter-spacing:.12em;margin-bottom:.4rem;text-transform:uppercase}.app-title{color:#036;font-size:2.7rem;margin-bottom:.6rem}.tagline{color:#344563;font-size:1.05rem;line-height:1.6;margin:0 auto 1.5rem;max-width:640px}.hero-cta-row{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center;margin-bottom:.9rem}.primary-btn,.secondary-btn{align-items:center;border:none;border-radius:999px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;justify-content:center;padding:.65rem 1.4rem;text-decoration:none}.primary-btn{background:#0057b8;box-shadow:0 8px 18px #0057b852;color:#fff;transition:background .18s ease,transform .12s ease,box-shadow .18s ease}.primary-btn:hover{background:#004390;box-shadow:0 12px 26px #00469461;transform:translateY(-1px)}.secondary-btn{background:#fff;border:1px solid #c5d7f7;color:#0057b8;transition:background .18s ease,border-color .18s ease,transform .12s ease}.secondary-btn:hover{background:#f3f7ff;border-color:#9bbaf5;transform:translateY(-1px)}.hero-subnote{color:#455a7a;font-size:.9rem;margin-top:.5rem}.content-section{margin:0 auto;max-width:1100px;padding:2.5rem 1.5rem}.light-bg{background:#eef4ff}.content-section h2{color:#036;font-size:1.7rem;margin-bottom:.75rem;text-align:center}.section-intro{color:#4a5b78;font-size:.98rem;margin:0 auto 1.4rem;max-width:620px;text-align:center}.how-steps{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.6rem}.how-step-card{background:#fff;border:1px solid #e2ebff;border-radius:18px;box-shadow:0 10px 30px #002a6614;padding:2.2rem 2.4rem;text-align:center;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.how-step-card:hover{border-color:#c5d7f7;box-shadow:0 18px 40px #002a6629;transform:translateY(-3px)}.how-step-icon{color:#0057b8;font-size:2.4rem;margin-bottom:.75rem}.how-step-card h3{color:#036;font-size:1.35rem;margin-bottom:.45rem}.how-step-card p{color:#334866;font-size:.99rem;margin:0 auto;max-width:640px}.placement-layout{gap:1.75rem;margin:1.5rem auto 0;max-width:960px}.placement-image-wrapper{flex:1 1 260px;min-width:260px}.placement-image{box-shadow:0 10px 30px #00000026}.placement-tips{color:#344563;flex:1 1 220px;font-size:.96rem;padding-left:1.4rem}.centered-cta-row{margin-top:1.8rem}.placement-layout{align-items:center;background:#fff;border:1px solid #e3e9f7;border-radius:18px;box-shadow:0 12px 28px #0000000f;display:flex;flex-wrap:wrap;gap:2.2rem;justify-content:center;margin:2rem auto 0;max-width:900px;padding:1.8rem 1rem;transition:box-shadow .2s ease,transform .2s ease}.placement-layout:hover{box-shadow:0 18px 40px #0000001a;transform:translateY(-3px)}.placement-layout:after{border-bottom:1px solid #e7eefc;content:"";display:block;margin:1rem auto 0;max-width:820px;opacity:.8;width:100%}.placement-image{border-radius:14px;box-shadow:0 6px 18px #0000001f;display:block;margin:0 auto;max-width:440px;width:100%}.placement-tips{color:#2d3e5f;flex:1 1 240px;font-size:1.05rem;line-height:1.55;list-style:disc;margin:0;padding-left:1.3rem}.placement-tips li+li{margin-top:.4rem}.centered-cta-row{margin-top:2.2rem;text-align:center}.demo-card{align-items:center;background:#f7fbff;border:1px dashed #c5d7f7;border-radius:18px;display:flex;justify-content:center;padding:2.4rem 2rem}.demo-card-inner{max-width:720px;text-align:center}.demo-icon-wrapper{align-items:center;background:#fff;border:2px solid #c5d7f7;border-radius:999px;display:inline-flex;height:64px;justify-content:center;margin-bottom:.8rem;width:64px}.demo-play-icon{color:#0057b8;font-size:2.2rem}.demo-card-inner h3{color:#036;font-size:1.15rem;margin:.2rem 0 .55rem}.demo-card-inner p{color:#42526e;font-size:.96rem;margin-bottom:.9rem}.demo-emphasis{color:#036;font-weight:600}.demo-pill-row{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-top:.4rem}.demo-pill{background:#fff;border:1px solid #d4e2ff;border-radius:999px;color:#355389;font-size:.78rem;padding:.25rem .7rem}.card-grid{grid-gap:1.4rem;display:grid;gap:1.4rem;margin-top:1.6rem}.card-grid.two-cards{display:flex;flex-wrap:wrap;gap:1.4rem;justify-content:center;margin-top:1.6rem}.card-grid.two-cards .info-card{flex:1 1 320px;max-width:420px}.info-card{background:#fff;border-radius:16px;box-shadow:0 10px 24px #0000000f;padding:1.6rem 1.7rem;text-align:left}.info-icon{color:#0057b8;font-size:1.6rem;margin-bottom:.55rem}.info-card h3{color:#036;font-size:1.15rem;margin:0 0 .3rem}.info-card p{margin:0}.bulleted-list,.info-card p{color:#4a5b78;font-size:.95rem}.bulleted-list{margin:.2rem 0 0;padding-left:1.1rem}.bulleted-list li+li{margin-top:.2rem}.auth-form-wrapper{background:#fff;border-radius:14px;box-shadow:0 10px 24px #0000000f;margin:1.5rem auto 0;max-width:420px;padding:1.6rem 1.8rem}.app-footer{color:#65738a;font-size:.85rem;padding:1.8rem 1.5rem 2.4rem;text-align:center}.footer-links span{cursor:default}@media (min-width:720px){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.info-card{text-align:left}}@media (max-width:640px){.hero-section{padding-top:3rem}.app-title{font-size:2.2rem}.how-step-card{padding:1.8rem 1.3rem}.placement-layout{align-items:center;flex-direction:column}}.placement-caption{color:#5a6b85;font-size:.85rem;font-style:italic;margin-top:.45rem;text-align:center}.form-container{background-color:initial;margin:0 auto;max-width:980px;padding:20px}.form-container h2{color:#0b3a6a;font-size:28px;font-weight:900;margin:8px 0 18px}.form-grid{grid-gap:16px 18px;display:grid;gap:16px 18px;grid-template-columns:1fr 1fr}.form-span-2{grid-column:span 2}.form-group{margin:0}.form-group label{color:#0b3a6a;display:block;font-weight:800;margin-bottom:8px}.form-group input{background:#fff;border:1px solid #11182726;border-radius:12px;font-size:16px;outline:none;padding:14px;width:100%}.form-group input:focus{border-color:#0b3a6a73;box-shadow:0 0 0 4px #0b3a6a1f}.form-group input[type=file]{background:#f3f7ff73;border-style:dashed;padding:12px}.preview-image{border:1px solid #1118271f;border-radius:12px;display:block;margin-top:10px;max-width:100%}.button-row{display:flex;gap:12px;justify-content:flex-start;margin-top:18px}.analyze-button,.reset-button{border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:900;padding:12px 18px}.analyze-button{background:#0b5bd3;box-shadow:0 10px 20px #0b5bd32e;color:#fff}.analyze-button:disabled{cursor:not-allowed;opacity:.6}.reset-button{background:#6b7280}.summary-strip{grid-gap:10px;background:#f3f7ffa6;border:1px solid #1118271a;border-radius:14px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr);margin-top:18px;padding:12px}.summary-item{background:#fff;border:1px solid #11182714;border-radius:12px;padding:10px 12px}.summary-label{color:#1f2a37a6;font-size:12px;font-weight:900;letter-spacing:.3px;text-transform:uppercase}.summary-value{color:#0b3a6a;font-size:16px;font-weight:900;margin-top:4px}@media (max-width:900px){.form-grid{grid-template-columns:1fr}.form-span-2{grid-column:auto}.summary-strip{grid-template-columns:1fr 1fr}}.done-button{background:#0b3a6a;color:#fff}.done-button:disabled{cursor:not-allowed;opacity:.45}.comparison-card{background:#fff;border:1px solid #00000014;border-radius:16px;box-shadow:0 10px 24px #10182814;margin-top:16px;padding:14px 14px 6px}.comparison-card h3{color:#0b3a6a;font-size:16px;font-weight:900;margin:0 0 6px}.delta-pos{color:#0a7a2f;font-weight:800}.delta-neg{color:#b42318;font-weight:800}.mode-container{padding:50px 20px;text-align:center}.mode-title{color:#003a78;font-size:42px;margin-bottom:10px}.mode-subtitle{color:#444;font-size:18px;margin-bottom:40px}.mode-grid{display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.mode-card{background:#fff;border-radius:16px;box-shadow:0 6px 20px #0000001f;padding:28px;transition:transform .2s ease,box-shadow .2s ease;width:420px}.mode-card:hover{box-shadow:0 10px 28px #0000002e;transform:translateY(-4px)}.mode-header{align-items:center;border-radius:12px;color:#fff;display:flex;gap:12px;justify-content:center;margin-bottom:18px;padding:18px}.surface-header{background:#0a4fa3}.room-header{background:#0c6b38}.mode-icon{font-size:34px}.mode-card:hover .mode-description{background:#eef3fa}.mode-btn{background:#0a4fa3;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:17px;padding:12px 0;transition:background .2s ease;width:100%}.mode-btn:hover{background:#073b7a}.mode-card{display:flex;flex-direction:column;justify-content:space-between}.mode-description{align-items:center;background:#f7f9fc;border:1px solid #e3e7ee;border-radius:10px;color:#222;display:flex;flex:1 1;font-size:17px;font-weight:600;line-height:1.55;margin-bottom:22px;padding:16px 18px;text-align:left}.contractor-dashboard{background:#f5f9ff;color:#1c1c1c;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:1.5rem}.dashboard-header{align-items:center;background:linear-gradient(90deg,#1b365d,#004aad);border-radius:10px;box-shadow:0 2px 8px #00000026;color:#fff;display:flex;justify-content:space-between;margin-bottom:1.25rem;padding:1.25rem 2rem}.dashboard-header h1{font-size:1.6rem;margin:0}.dashboard-header p{font-size:.95rem;margin:.2rem 0 0;opacity:.9}.dashboard-header-meta{display:flex;flex-direction:column;font-size:.85rem;gap:.2rem;text-align:right}.dashboard-header-meta strong{font-weight:700}.contractor-filter-bar{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.project-list{margin-top:.5rem}.table-wrapper{overflow:hidden}.project-table{background:#fff;border-collapse:collapse;table-layout:fixed;width:100%}.project-table td,.project-table th{border-bottom:1px solid #e0e0e0;font-size:.85rem;overflow:hidden;padding:.65rem .9rem;text-align:left;text-overflow:ellipsis;white-space:nowrap}.project-table td:first-child,.project-table th:first-child{width:8%}.project-table td:nth-child(2),.project-table th:nth-child(2){width:14%}.project-table td:nth-child(3),.project-table th:nth-child(3){width:20%}.project-table td:nth-child(4),.project-table th:nth-child(4){width:12%}.project-table td:nth-child(5),.project-table td:nth-child(6),.project-table td:nth-child(7),.project-table td:nth-child(8),.project-table th:nth-child(5),.project-table th:nth-child(6),.project-table th:nth-child(7),.project-table th:nth-child(8){width:10%}.project-table td:nth-child(9),.project-table th:nth-child(9){width:16%}.project-table td:nth-child(10),.project-table th:nth-child(10){text-align:center;width:8%}.project-table thead tr:first-child th{background:#f0f7ff;position:-webkit-sticky;position:sticky;top:0;z-index:3}.project-table thead tr.filter-row th{background:#f7f9ff;position:-webkit-sticky;position:sticky;top:42px;z-index:2}.project-table th{border-bottom:1px solid #d8e3f8;color:#036;font-weight:600}.th-sort-button:focus{outline:none}.th-sort-button:hover .sort-indicator{opacity:1}.filter-input::placeholder,.filter-number::placeholder{color:#a0a0a0}.project-table tbody tr:nth-child(2n){background:#fafcff}.project-table tbody tr:hover{background:#eef4ff}.project-type-chip{letter-spacing:.02em}.view-btn{background-color:#004aad;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;padding:.35rem .9rem;transition:background-color .3s ease}.view-btn:hover{background-color:#003b8a}.modal-backdrop{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 2px 15px #0000004d;max-width:720px;padding:1.5rem;text-align:left;width:100%}.modal-images{display:flex;gap:1rem;margin:1rem 0}.modal-images img{border-radius:10px;box-shadow:0 2px 8px #00000026;object-fit:cover;width:48%}.close-btn{background-color:#004aad;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.6rem 1.2rem;transition:.3s}.close-btn:hover{background-color:#003b8a}.no-projects{color:#555;font-style:italic;margin-top:2rem;text-align:center}.no-results-row{color:#666;font-size:.9rem;padding:1.5rem .5rem;text-align:center}.contractor-loading{font-size:1.2rem;padding:3rem;text-align:center}.admin-container{background:#f5f9ff;color:#1c1c1c;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;margin:0 auto;max-width:1600px;min-height:100vh;padding:1.5rem;width:100%}.admin-header{align-items:center;background:linear-gradient(90deg,#1b365d,#004aad);border-radius:10px;box-shadow:0 2px 8px #00000026;color:#fff;display:flex;justify-content:space-between;margin-bottom:1.25rem;padding:1.25rem 2rem}.admin-header h1{font-size:1.6rem;margin:0}.admin-header p{font-size:.95rem;margin:.2rem 0 0;opacity:.9}.admin-header-meta{display:flex;flex-direction:column;font-size:.85rem;gap:.2rem;text-align:right}.admin-header-meta strong{font-weight:700}.admin-filter-bar{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem}.filter-chip{background:#fff;border:1px solid #c5d7f7;border-radius:999px;color:#244b8a;cursor:pointer;font-size:.8rem;padding:.25rem .8rem;transition:all .15s ease}.filter-chip:hover{background:#e6f0ff;border-color:#9bbaf5}.filter-chip.chip-active{background:#004aad;border-color:#004aad;color:#fff}.filter-actions{align-items:center;display:flex;gap:.5rem}.export-btn{background:#004aad;border:none;border-radius:999px;box-shadow:0 1px 4px #0000002e;color:#fff;cursor:pointer;font-size:.8rem;padding:.35rem .9rem;transition:background .15s ease,transform .1s ease}.export-btn:hover{background:#003b8a;transform:translateY(-1px)}.export-btn:active{transform:translateY(0)}.clear-filters-btn{background:#0000;border:none;border-radius:999px;color:#666;cursor:pointer;font-size:.8rem;padding:.3rem .6rem;text-decoration:underline}.clear-filters-btn:hover{color:#333}.admin-project-list,.table-wrapper{margin-top:.5rem}.table-wrapper{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;max-height:calc(100vh - 210px);overflow-x:auto;overflow-y:auto}.admin-table{background:#fff;border-collapse:collapse;min-width:1500px;width:100%}.admin-table td,.admin-table th{border-bottom:1px solid #e0e0e0;font-size:.85rem;padding:.65rem .9rem;text-align:left;white-space:nowrap}.admin-table thead tr:first-child th{background:#f0f7ff;position:-webkit-sticky;position:sticky;top:0;z-index:3}.admin-table thead tr.filter-row th{background:#f7f9ff;position:-webkit-sticky;position:sticky;top:42px;z-index:2}.admin-table th{border-bottom:1px solid #d8e3f8;color:#036;font-weight:600}.th-sort-button{align-items:center;background:#0000;border:none;color:inherit;cursor:pointer;display:inline-flex;font:inherit;gap:.25rem;margin:0;padding:0}.sort-indicator{font-size:.75rem;opacity:.6}.filter-row th{border-bottom:1px solid #e3ebff;padding-bottom:.4rem;padding-top:.4rem}.filter-date,.filter-input,.filter-number,.filter-select{background:#fff;border:1px solid #d3ddf4;border-radius:4px;box-sizing:border-box;font-size:.75rem;padding:.2rem .3rem;width:100%}.filter-range{display:flex;gap:.15rem}.filter-range .filter-date,.filter-range .filter-number{width:50%}.admin-table tbody tr:nth-child(2n){background:#fafcff}.admin-table tbody tr:hover{background:#eef4ff}.project-type-chip{border-radius:999px;color:#fff;display:inline-block;font-size:.7rem;font-weight:600;padding:.15rem .55rem}.project-type-room{background:#004aad}.project-type-surface{background:#00897b}.admin-delete-btn{background:#c62828;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;padding:.35rem .8rem}.admin-delete-btn:hover{background:#b71c1c}.no-projects,.no-results-row{color:#666;font-size:.9rem;padding:1.5rem .5rem;text-align:center}.admin-loading{font-size:1.2rem;padding:3rem;text-align:center}.retry-btn{background:#004aad;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:.9rem;margin-top:.75rem;padding:.5rem 1.1rem}.retry-btn:hover{background:#003b8a}.topbar{align-items:center;background:#0b3a6a;box-shadow:0 8px 18px #00000026;color:#fff;display:flex;gap:14px;justify-content:space-between;padding:14px 18px}.topbar-left .brand{font-size:34px;font-weight:900;letter-spacing:.3px}.topbar-center{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:14px;justify-content:center}.user-email{font-weight:900;opacity:.95}.role-pill{background:#ffffff2e;border:1px solid #ffffff40;border-radius:999px;font-weight:900;padding:6px 10px;text-transform:lowercase}.navlinks{align-items:center;display:flex;gap:18px;margin-left:10px}.navlinks a{color:#fff;font-weight:900;opacity:.95;text-decoration:none}.navlinks a.active{text-decoration:underline;text-underline-offset:6px}.topbar-right{align-items:center;display:flex}.logout-btn{background:#fff;border:none;border-radius:10px;color:#0b3a6a;cursor:pointer;font-weight:900;padding:10px 14px}.logout-btn:hover{filter:brightness(.96)}.app-content{padding:18px}.multiroom-page{background:linear-gradient(180deg,#f3f7ff,#fff 70%);min-height:100%;padding:24px 16px 48px}.multiroom-shell{margin:0 auto;max-width:1100px}.multiroom-header{align-items:flex-end;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.multiroom-title{color:#003a78;font-size:38px;font-weight:900;letter-spacing:.2px;margin:0}.multiroom-subtitle{color:#334e68;font-size:16.5px;font-weight:600;line-height:1.65;margin:10px 0 0;max-width:920px}.multiroom-steps{background:#fffc;border:1px solid #1118271a;border-radius:14px;margin-top:14px;padding:12px 14px}.multiroom-steps-title{color:#0b3a6a;font-size:14px;font-weight:900;letter-spacing:.3px;margin-bottom:6px;text-transform:uppercase}.multiroom-steps-list{color:#0b3a6af2;font-size:15px;font-weight:600;line-height:1.55;margin:0;padding-left:18px}.multiroom-card{background:#fff;border:1px solid #00000014;border-radius:16px;box-shadow:0 10px 30px #00000014;margin-bottom:28px;padding:22px}.multiroom-card .form-container{margin:0 auto}.form-container{margin:auto;max-width:800px;padding:1rem}.form-grid label{display:block;margin-bottom:10px}.preview-row{display:flex;gap:10px;margin-top:1rem}.preview-wrapper{position:relative}.preview-wrapper img{height:200px;object-fit:cover;width:300px}.preview-wrapper canvas{height:200px;left:0;pointer-events:none;position:absolute;top:0;width:300px}.button-row{margin-top:1rem}.blue-button{background:#007bff;margin-right:10px}.blue-button,.reset-button{border:none;color:#fff;padding:.5rem 1rem}.reset-button{background:#6c757d}
/*# sourceMappingURL=main.cb2ada85.css.map*/