body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.search-and-filter-button{display:flex;align-items:center;justify-content:space-between;position:relative;margin-top:10px}.filters,.order-by{z-index:10;background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;padding:20px;width:auto;box-sizing:border-box;top:100%}.head-wrapper{background-color:#d6c1e6;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;flex-wrap:wrap;position:relative}.row-wrapper{display:flex;justify-content:center;align-items:center;width:100%;padding:10px}@media screen and (max-width: 768px){.row-wrapper{justify-content:flex-start}}.search-wrapper{flex-grow:1;padding:5px 0;flex:0 1 60%;align-items:center;margin-right:4vw}.search-input{padding:12px 10px;border:none;border-radius:8px;background-color:#fff;box-shadow:0 2px 4px #0000001a;font-size:14px;color:#333;outline:none;width:105%;flex-grow:1}.filter-toggle-button{padding:10px 24px;justify-content:left;display:flex;border:none;border-radius:20px;background-color:#740986;color:#fff;font-size:16px;margin-bottom:12px;transition:background-color .3s ease}.filter-toggle-button:hover{background-color:#8e1aa5;cursor:pointer}.filters{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;padding:20px;width:90%;max-width:500px;box-sizing:border-box}.filter-dropdown-container{margin-right:12px}.filter-dropdown-container label{display:block;font-size:14px;color:#333;margin-bottom:4px;margin-top:4px}.filter-dropdown{width:100%;margin:10px 0;padding:10px 15px;border-radius:20px;border:1px solid #DDD;background-color:#f9f9f9;box-shadow:inset 0 1px 3px #0000000f;outline:none;color:#333;font-size:16px}.filter-text{font-size:18px}.order-by-toggle-button{padding:10px 24px;justify-content:left;display:flex;border:none;border-radius:20px;background-color:#740986;color:#fff;font-size:16px;margin-bottom:12px;margin-left:12px;transition:background-color .3s ease}.order-by-toggle-button:hover{background-color:#8e1aa5;cursor:pointer}.order-by{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;padding:20px;width:90%;max-width:500px;box-sizing:border-box}.new-building-button{padding:7px 10px;border-radius:5px;border:none;color:#fff;font-size:16px;background-color:#740986;transition:background-color .3s ease}.new-building-button:hover{background-color:#8e1aa5;cursor:pointer}.new-building-button-container{display:flex;align-items:center}.filter-summary{margin-top:10px}.search-signin-container{position:absolute;right:10px}.signin-button,.signout-button{padding:11px;border-radius:5px;border:none;color:#fff;font-size:16px;background-color:#740986;transition:background-color .3s ease}.signin-button:hover{background-color:#8e1aa5;cursor:pointer}.signin-container{display:flex;align-items:center}.menu-bar{display:flex;justify-content:space-around;align-items:center;background-color:#d6c1e6;padding:8px;position:fixed;bottom:0;width:100%}.menu-item{display:flex;flex-direction:row;align-items:center;cursor:pointer;padding:8px;transition:background-color .3s}.menu-item:hover,.menu-item.active{background-color:#e0e0e0}.menu-icon{stroke:#000;margin-right:8px}.menu-label{font-size:12px;color:#000;text-align:center}.slider-container{position:relative;width:100%;height:300px;background-color:#e0e0e0;margin:auto;overflow:hidden;border-radius:8px}.slide{position:absolute;width:100%;height:100%;top:0;left:0;object-fit:cover;border-radius:8px;transition:opacity .5s ease;opacity:0}.active{opacity:1}.arrow{position:absolute;top:50%;transform:translateY(-50%);background-color:#0009;color:#fff;border:none;padding:10px;cursor:pointer;z-index:100}.prev{left:10px}.next{right:10px}.review-layout{display:flex;justify-content:center;gap:16px;font-family:Open Sans,sans-serif;max-width:100%;margin:auto;width:100%}.rating-box,.reviews-box{margin:20px 5px}.rating-box{display:flex;flex-direction:column;align-items:center;padding:1rem 0rem 0rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;background:#fff;border:1px solid #e6e6e6;width:30%;max-width:115px}.rating-score{font-size:30px;font-weight:700}.rating-description{font-size:18px;margin-top:4px}.rating-out-of{background-color:#740986;color:#fff;width:100%;padding:5px 0;border-radius:0 0 7px 7px;font-size:16px;margin-top:4px}.reviews-box{display:flex;flex-direction:column;padding:1rem;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #e6e6e6;width:60%;align-items:center;justify-content:center}.stars-and-review{display:flex;align-items:center}.stars{color:#740986;font-size:24px}.reviews-count{font-size:14px;color:#000;margin-left:8px}.review-button{background-color:#740986;color:#fff;padding:8px 16px;border-radius:4px;border:none;cursor:pointer;font-size:14px;transition:background-color .3s;width:100%;margin-top:8px}.review-button:hover,.submit-review-button:hover{background-color:#8e1aa5}.submit-review-button{font-size:14px;margin:8px;padding:10px;border:none;border-radius:4px;background-color:#740986;color:#fff;cursor:pointer}.review-textarea{margin:0 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.property-review{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;margin-bottom:20px;width:90%;max-width:600px;height:auto;margin-left:auto;margin-right:auto;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #e6e6e6}.favorite-icon{position:absolute;top:10px;right:10px;cursor:pointer;color:#740986}.favorite-icon:hover{transform:scale(1.1)}.property-review:hover{background-color:#eee;cursor:pointer}.property-name{margin:0;font-size:2rem;color:#740986}.property-review-link{text-decoration:none;color:#740986;-webkit-user-select:none;user-select:none}.property-rating{display:flex;align-items:center;justify-content:center}.property-review-count{margin-left:5px;line-height:1;color:#610670}.property-cost-range{font-size:1.5rem;font-weight:700;color:#666}.property-review-details{width:100%;padding-top:20px;border-top:2px solid #740986;text-align:center;margin-top:20px}.property-beds,.property-walking-time,.property-best-review,.property-location{font-size:1.5rem;color:#666;margin:10px 0}.property-cost-range{font-weight:700;color:#666;margin:10px 0}.property-best-review{font-style:italic;padding:0 10%}.property-photo{width:60%;object-fit:cover;display:block;border-radius:4px;margin:0 auto}.favorite-icon:hover{transform:scale(1.1);cursor:pointer}.review-container{display:flex;justify-content:center;position:relative;width:100%}.review-item{display:flex;margin:15px 0;font-size:14px;width:100%;position:relative;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #e6e6e6}.review-profile{max-width:120px;text-align:center;margin-left:15px;margin-right:20px;margin-top:5px}.review-profile-photo{width:80px;margin-top:10px}.review-details{text-align:left;width:100%;overflow-x:auto}.review-name{font-size:14px}.review-rating{display:inline-block;padding-top:10px;padding-right:10px}.review-desc{padding-bottom:10px;padding-right:10px}.review-photos-container{display:flex;margin-bottom:10px}.review-photo-wrapper{margin-right:10px}.review-photo{width:100px;height:80px;border-radius:2px;object-fit:cover}.review-votes{display:inline-block;padding-right:1px;text-align:right;vertical-align:top;margin-top:10px;position:absolute;right:2px}.review-upvotes-count,.review-downvotes-count{display:inline-block;vertical-align:top;margin-top:3px;margin-right:2px}.upvote-icon{margin-right:1px;cursor:pointer}.downvote-icon{margin-right:2px;cursor:pointer}.delete-review-icon{position:absolute;bottom:10px;right:10px}.delete-review-icon:hover{cursor:pointer}.reviews-list{display:flex;flex-direction:column;align-items:center}.sort-by{align-self:flex-start;margin-right:auto}.dropdown{margin-left:5px;padding:2px}.loading{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.icon-container{width:33.33%;aspect-ratio:1/1;display:flex;justify-content:center;align-items:center;margin:6px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #e6e6e6}.icon-text-container{text-align:center;padding-top:10px}.back-button{background-color:#740986;color:#fff;border:none;border-radius:5px;padding:6px 12px;transition:background-color .3s ease;position:absolute;left:10px;display:flex;justify-content:center}.back-button:hover{background-color:#8e1aa5;cursor:pointer}.back-button:focus{outline:none;box-shadow:0 0 0 3px #732c704d}.property-page{display:flex;flex-direction:column;align-items:center;text-align:center;background-color:#fdfdfd;width:100%;padding-top:20px;border-top:2px solid #740986;margin-top:20px}.property-details{width:90%;max-width:420px}.property-name{margin-bottom:10px}.menu-container{margin-top:50px}.icons-container{display:flex;flex-direction:column;margin-top:15px;width:100%}.icon-row{display:flex}.see-favorites{color:#c4c2c2;font-style:italic;font-weight:bolder;text-align:center}.see-favorites-container{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.maps-component{display:flex;height:100vh}.sidebar{width:30%;padding:20px;background-color:#f5f5f5;overflow-y:scroll}.marker{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer}.marker-icon{width:30px;height:30px;background-color:#ff5a5f;border-radius:50% 50% 50% 0;transform:rotate(-45deg) translate(-15px,-30px);position:relative;box-shadow:0 2px 4px #0003}.marker-text{margin-top:8px;font-size:14px;font-weight:700;color:#333}.new-building-page-container{display:flex;justify-content:center;align-items:center;width:100%;border-top:2px solid #740986;margin-top:20px}.new-building-container{text-align:center;background-color:#fdfdfd;width:80%;padding-top:20px}.name-error{color:#dc143c;text-align:left;margin-bottom:10px}.page-container{display:flex;flex-direction:column;align-items:center}.App{text-align:center;font:Courier;background-color:#fdfdfd}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion: no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}button{font-size:calc(10px + 2vmin)}*{box-sizing:border-box}body{font-size:14px}.search-bar{margin-bottom:20px}.no-properties,.no-reviews,.see-favorites{color:#c4c2c2;font-style:italic;font-weight:bolder;text-align:center}.menu-container{margin-top:70px}.maps-component{display:flex;flex-direction:row;height:100vh}.map-container{flex:1}.property-list-container{width:30%;padding:20px;background-color:#f5f5f5;overflow-y:scroll;order:-1}.property-list{list-style-type:none;padding:0}.property-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;margin-bottom:20px;cursor:pointer;transition:transform .3s ease}.property-card:hover{transform:translateY(-5px)}.property-card.selected{background-color:#e0e0e0}.property-name{margin:0 0 10px}.property-rating{margin-bottom:10px}.star{color:#ccc;font-size:18px}.star.filled{color:#fc0}.property-address{margin:0;color:#666}.marker{display:flex;flex-direction:column;align-items:center;cursor:pointer}.marker-icon{width:30px;height:30px;background-color:#ff5a5f;border-radius:50% 50% 50% 0;transform:rotate(-45deg);position:relative;box-shadow:0 2px 4px #0003}.marker-icon:after{content:"";width:24px;height:24px;background-color:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.marker-text{position:absolute;bottom:100%;background-color:#ffffffbf;padding:5px 10px;border-radius:4px;box-shadow:0 2px 6px #0000001a;font-size:14px;font-weight:700;color:#333;white-space:nowrap}@media screen and (max-width: 768px){.maps-component{flex-direction:column}.property-list-container{width:100%;height:30vh;overflow-y:scroll;order:unset}.property-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:20px}}
