body,html{margin:0;padding:0;height:100%;overflow:auto;font-family:Arial,Helvetica,sans-serif}.map-wrapper{position:relative;width:100%;height:100vh;z-index:0}#map{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1}.leaflet-control-zoom{display:none!important}.custom-neumorphic-icon{background:none!important;border:none!important}.custom-png-icon img{filter:drop-shadow(3px 0px 2px rgba(143,143,143,.4));display:block;width:32px;height:32px;-webkit-user-select:none;user-select:none;pointer-events:none}.neumorphic-marker{width:24px;height:24px;background:#c7f5d3;border-radius:50%;box-shadow:6px 6px 10px #bebebe,-6px -6px 10px #fff;border:1px solid #000000}.route-label{font-size:12px;color:#333;text-shadow:0 0 2px #fff}.user-location-icon{position:relative;width:40px;height:40px}.user-location-icon .pulse{position:absolute;width:40px;height:40px;background:#00c80040;border-radius:50%;animation:pulseAnim 1.5s ease-out infinite;top:0;left:0;z-index:1}.user-location-icon .marker-image{position:absolute;width:32px;height:32px;top:4px;left:4px;z-index:2}@keyframes pulseAnim{0%{transform:scale(.8);opacity:.8}70%{transform:scale(1.6);opacity:0}to{transform:scale(.8);opacity:0}}#auth-banner{position:fixed;top:0;left:0;width:100%;height:100%;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(5px);background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:100000}.auth-banner-logo{display:block;margin:20px auto;width:100px;height:auto}.auth-banner-content{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(to bottom right,#fffc,#fff9);max-width:80%;padding:20px;border-radius:10px;box-shadow:5px 5px 10px #31313133,-5px -5px 10px #7f7f7f4d,inset 3px 3px 6px #b7b6b633,inset -3px -3px 6px #ffffff4d;border:1px solid rgba(255,255,255,.5);width:80%;max-width:400px}.auth-banner-heading{font-size:24px;font-weight:700;margin:20px;text-align:left;color:#333}.auth-banner-description{font-size:12px;color:#666;margin-bottom:45px;text-align:left}.auth-banner-input{width:85%;padding:14px;margin:0 auto 25px;border:.5px solid black;border-radius:5px;box-shadow:inset 3px 3px 6px #ededed,inset -3px -3px 6px #fff;color:#333;display:block}.auth-banner-submit-button{width:75%;padding:12px;margin:0 auto 10px;background:#c7f5d3;border:.5px solid black;border-radius:9999px;font-size:16px;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center;box-shadow:5px 5px 10px #d1d1d1,-5px -5px 10px #fff}.google-signin-button{width:75%;padding:12px;margin:0 auto 30px;background:linear-gradient(145deg,#fff,#f7f7f7);border:.5px solid black;border-radius:9999px;font-size:16px;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center;box-shadow:inset 3px 3px 6px #d1d1d1,inset -3px -3px 6px #fff}.google-signin-button img{width:20px;height:20px;margin-right:10px}.auth-banner-toggle-text{font-size:14px;color:#666;margin-top:10px;text-align:center}.auth-banner-toggle-text a{color:#337ab7;text-decoration:none}#auth-banner.hidden{display:none!important}#search-container{position:fixed;top:1rem;left:50%;transform:translate(-50%);width:80%;max-width:500px;display:flex;align-items:center;gap:.5rem;z-index:1001;background:#e0e0e0;box-shadow:5px 5px 10px #d1d1d1,-5px -5px 10px #fff;border-radius:9999px;padding:.05rem}#search-bar{flex:1;padding:1.25rem;border:none;border-radius:9999px;font-size:1.1rem;width:100%;background:linear-gradient(145deg,#e0e0e0,#fff);box-shadow:inset 3px 3px 6px #d1d1d1,inset -3px -3px 6px #fff;z-index:1001;color:#333;transition:box-shadow .2s ease}#search-bar:hover{box-shadow:inset 2px 2px 4px #d1d1d1,inset -2px -2px 4px #fff}#search-bar:focus{outline:none;box-shadow:inset 2px 2px 4px #d1d1d1,inset -2px -2px 4px #fff,0 0 0 2px #b0b0b0}#search-bar::placeholder{color:#6b7280}#search-dropdown{position:absolute;top:100%;left:0;right:0;background:linear-gradient(145deg,#e0e0e0,#fff);border-radius:1rem;border:none;box-shadow:inset 2px 2px 4px #bebebe,inset -2px -2px 4px #fff;z-index:1006;padding:1rem .75rem;margin-top:.75rem;list-style:none;max-height:220px;overflow-y:auto;transition:all .3s ease}#search-dropdown li{padding:.75rem 1rem;cursor:pointer;color:#333;font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:100;line-height:1.75;letter-spacing:.2px;background:#e0e0e0;border-radius:.75rem;padding:1rem .75rem;margin:.25rem .75rem;transition:all .2s ease;box-shadow:2px 2px 5px #bebebe,-2px -2px 5px #fff}#search-dropdown li:hover{background:#e0e0e0;box-shadow:inset 2px 2px 5px #bebebe,inset -2px -2px 5px #fff}#search-dropdown.hidden{display:none!important}#search-dropdown .search-section-header{font-weight:600;border:2px solid #10B981;font-size:.75rem;text-transform:uppercase;padding:4px 8px;color:#777}#search-dropdown .search-result{cursor:pointer;padding:6px 8px}#search-dropdown .search-result:hover{background:#f2f2f2}#user-location-button{position:fixed;top:6.5rem;right:1.5rem;width:3.5rem;height:3.5rem;background:linear-gradient(145deg,#e0e0e0,#fff);border:none;border-radius:50%;box-shadow:5px 5px 10px #d1d1d1,-5px -5px 10px #fff;display:flex;align-items:center;justify-content:center;z-index:1000;transition:box-shadow .2s ease}#user-location-button:hover{box-shadow:3px 3px 6px #d1d1d1,-3px -3px 6px #fff}#user-location-button:active{box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff}#user-location-button:focus{outline:none;box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff,0 0 0 2px #b0b0b0}#user-location-button svg{width:1.75rem;height:1.55rem;color:#333}#user-location-button:disabled svg{color:#6b7280}.tab{padding:.6rem 1rem;font-size:1rem;color:#333;cursor:pointer;z-index:1000;background:#ffffff40;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:3px 3px 6px #0000000d,-3px -3px 6px #ffffffb3,inset 1px 1px 2px #fff3,inset -1px -1px 2px #0000000d;border-radius:.75rem;border:.5px solid black;transition:box-shadow .2s ease,color .3s ease,transform .2s ease}.tab:hover{color:#4b5563;transform:scale(1.05);box-shadow:2px 2px 5px #0000000d,-2px -2px 5px #fff9}.tab.active{color:#c7f5d3;font-weight:600;box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff}.tab:focus{outline:none;box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff,0 0 0 2px #b0b0b0}.fixed.bottom-0{position:fixed;bottom:3rem;left:50%;transform:translate(-50%);width:85%;max-width:400px;padding:1rem;border-radius:9999px;background:#fff3;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:.5px solid black;box-shadow:5px 5px 10px #d1d1d180,-5px -5px 10px #fff9,inset 3px 3px 6px #d1d1d166,inset -3px -3px 6px #fff6;display:flex;justify-content:space-around;z-index:1001}.tab-bar-button{display:flex;flex-direction:column;align-items:center;padding:.25rem;background:transparent;box-shadow:none;font-size:.95rem;color:#333;cursor:pointer;z-index:1000;transition:color .3s ease,transform .2s ease,box-shadow .2s ease}.tab-bar-button:hover{color:#4b5563;transform:scale(1.1);box-shadow:2px 2px 4px #d1d1d1,-2px -2px 4px #fff}.tab-bar-button.active{color:#4b5563;font-weight:600;box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff}.tab-bar-button:focus{outline:none;box-shadow:inset 2px 2px 5px #8d8d8d,inset -2px -2px 5px #fff,0 0 0 2px #bdbdbd}.tab-bar-button svg{width:1.55rem;height:1.5rem;margin-bottom:.125rem;color:#333;transition:color .3s ease}.tab-bar-button:hover svg,.tab-bar-button.active svg{color:#4b5563}#cities-button,#top-100-button,#favorites-button{color:#333}#floating-card{position:fixed;bottom:3rem;left:50%;transform:translate(-50%);width:85%;max-width:450px;padding:1px 15px 15px;border-radius:20px;background:#ffffff0f;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(0,0,0,.25);box-shadow:0 1px 2px #0000000d,0 8px 24px #0000001a;z-index:1002;color:#f8f8f8}.floating-card-close-button{position:absolute;top:12px;right:12px;background:#ffffff1a;border:1px solid rgba(0,0,0,.2);padding:6px;border-radius:50%;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:transform .2s ease}.floating-card-close-button:hover{transform:scale(1.1)}.floating-card-close-button:active{transform:scale(.95)}.floating-card-close-button:focus{outline:none;box-shadow:0 0 0 2px #fff6}.floating-card-close-button svg{width:20px;height:20px;stroke:#000}.floating-card-heading{font-size:1.25rem;font-weight:600;color:#000;margin-bottom:8px;display:flex;align-items:center;gap:8px}.floating-card-info{font-size:.875rem;color:#393939;margin-bottom:8px;display:flex;align-items:center;gap:.5rem}.floating-card-info .star-icon{width:16px;height:16px;color:#000}.floating-card-actions{display:flex;justify-content:flex-start;margin-top:20px;gap:.75rem;padding-bottom:.7rem}.floating-card-action-button{background:#ffffff1f;border:1px solid rgba(0,0,0,.2);border-radius:12px;width:70px;height:50px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#000;cursor:pointer;font-size:.7em;text-align:center;padding:5px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .2s ease,background .3s ease}.floating-card-action-button:hover{background:#ffffff2e;transform:scale(1.05)}.floating-card-action-button:active{background:#ffffff40;transform:scale(.95)}.floating-card-action-button:focus{outline:none;box-shadow:0 0 0 2px #ffffff4d}.floating-card-action-button svg{margin-bottom:2px;width:20px;height:20px;color:#000}@media (min-width: 640px){.floating-card-actions{padding-bottom:1rem}}@media (min-width: 768px){.floating-card-actions{padding-bottom:.75rem}}#floating-card.hidden{display:none;pointer-events:none;visibility:hidden;opacity:0}#shop-details-banner{display:block;position:fixed;bottom:0;left:0;right:0;margin:0 auto;width:100vw;max-width:100vw;max-height:90vh;overflow-y:auto;padding:2rem 1rem;background:#ffffff0f;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:1px solid rgba(0,0,0,.25);border-radius:28px 28px 0 0;box-shadow:0 1px 2px #0000000d,0 8px 32px #0000001a;z-index:1005;animation:slideUp .4s ease-out forwards;box-sizing:border-box;color:#f8f8f8}#shop-details-banner:before{content:"";display:block;width:50px;height:5px;background:#fff6;border-radius:999px;margin:0 auto 1rem;cursor:pointer}.shop-details-close-button{position:absolute;top:12px;right:12px;background:#ffffff1a;border:1px solid rgba(0,0,0,.2);cursor:pointer;padding:6px;border-radius:50%;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .2s ease}.shop-details-close-button:hover{transform:scale(1.1)}.shop-details-close-button:active{transform:scale(.95)}.shop-details-close-button:focus{outline:none;box-shadow:0 0 0 2px #fff6}.shop-details-close-button svg{width:20px;height:20px;stroke:#000}.shop-details-heading{font-size:1.25rem;font-weight:600;color:#000;margin-bottom:8px;display:flex;align-items:center;gap:8px}.shop-details-info{font-size:.875rem;color:#000;margin-bottom:8px;display:flex;align-items:center;gap:6px}.shop-details-info a{color:#000;text-decoration:underline}.shop-details-info svg{width:16px;height:16px;color:#000}.shop-details-ratings-section{margin:16px 0;background:#ffffff0d;border-radius:12px;padding:12px;border:1px solid rgba(255,255,255,.1)}.shop-details-subheading{font-size:1rem;font-weight:500;color:#1e1e1e;margin-bottom:8px}.shop-details-rating-dots{display:flex;gap:4px;margin-bottom:12px}.shop-details-rating-dot{width:8px;height:8px;border-radius:50%;background:#000}.shop-details-breakdown-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.shop-details-breakdown-label{width:80px;font-size:.875rem;color:#3f3f3f}.shop-details-progress-bar{flex:1;height:8px;background:#56565626;border-radius:4px;overflow:hidden}.shop-details-progress-bar-fill{height:100%;background:#8de4af;transition:width .3s ease}.shop-details-breakdown-count{width:30px;text-align:right;font-size:.875rem;color:#616161}.shop-details-total-reviews{font-size:.875rem;color:#626262;margin-top:8px}.shop-details-reviews-section{margin-top:16px}.shop-details-reviews-container{overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;max-height:200px}.shop-details-reviews-track{display:flex;gap:16px;cursor:grab;flex-wrap:nowrap}.shop-details-review-card{flex:0 0 auto;width:180px;padding:12px;background:#2b2b2b14;border-radius:10px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(0,0,0,.1);max-height:180px}.shop-details-review-card p{font-size:.875rem;color:#000;margin-bottom:4px;word-break:break-word}.shop-details-review-card p strong{font-weight:600}.shop-details-button-container{margin-top:16px;display:flex;justify-content:flex-start}.shop-details-leave-review-button{background:#ffffff1f;color:#000;border:1px solid rgba(0,0,0,.2);padding:8px 16px;border-radius:10px;font-size:.875rem;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s ease,background .3s ease}.shop-details-leave-review-button:hover{background:#0000002e;transform:scale(1.05)}.shop-details-leave-review-button:active{background:#ffffff40;transform:scale(.95)}.shop-details-leave-review-button:focus{outline:none;box-shadow:0 0 0 2px #0000004d}.shop-details-amenities{margin:10px 0;font-size:.875rem;color:#000}.shop-details-amenity{display:inline-block;background:#ffffff1a;color:#000;padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:500;margin-right:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.shop-details-actions{display:flex;gap:10px;margin:10px 0}#review-banner{display:block;position:fixed;bottom:0;left:0;right:0;width:100%;max-height:90vh;overflow-y:auto;padding:2rem 1.5rem;background:#ffffff0f;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border-radius:20px 20px 0 0;border:1px solid rgba(0,0,0,.25);box-shadow:0 1px 2px #0000000d,0 12px 36px #0000001a;z-index:1005;box-sizing:border-box;transform:translateY(100%);animation:slideUp .4s forwards ease-out}#review-banner:before{content:"";display:block;width:50px;height:5px;background:#ffffff80;border-radius:999px;margin:0 auto 1rem;cursor:grab;touch-action:none}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.review-banner-close-button{position:absolute;top:12px;right:12px;background:#ffffff1a;border:1px solid rgba(0,0,0,.2);padding:6px;border-radius:50%;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:transform .2s ease;color:#fff}.review-banner-close-button:hover{transform:scale(1.1)}.review-banner-close-button:active{transform:scale(.95)}.review-banner-close-button:focus{outline:none;box-shadow:0 0 0 2px #fff6}.review-banner-close-button svg{width:20px;height:20px;stroke:#fff}.review-banner-shop-name{font-size:.95rem;font-weight:400;color:#000;text-align:center;margin-bottom:.25rem}.review-banner-heading{font-size:1.5rem;font-weight:600;color:#000;margin-bottom:1rem;text-align:left}.review-banner-rating-container{display:flex;flex-direction:column;align-items:center;padding:1rem 0 .5rem}.rating-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem .5rem;gap:1rem;justify-content:flex-start;max-width:100%;-ms-overflow-style:none;scrollbar-width:none;margin-bottom:.25rem;-webkit-overflow-scrolling:touch}.rating-carousel::-webkit-scrollbar{display:none}.rating-pill{flex:0 0 auto;scroll-snap-align:center;width:40px;height:40px;border-radius:50%;font-size:1.5rem;font-weight:200;color:#333;background:#fff;border:2px solid #e5e5e5;box-shadow:2px 2px 5px #0000000d,inset -1px -1px 2px #fff9;display:flex;align-items:center;justify-content:center;transition:all .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.rating-pill.active{width:50px;height:50px;color:#fff;background-color:#c7f5d3;border-color:#000;border:.5px solid black;transform:scale(1.15);font-weight:700;box-shadow:0 6px 16px #0000001f}.rating-scroll-hint{font-size:.75rem;color:#aaa;margin-top:.25rem;text-align:center}.review-banner-textarea{position:relative;left:50%;transform:translate(-50%);width:95%;max-width:600px;height:6.5rem;padding:1rem;background:#ffffff1a;border:.5px solid black;border-radius:16px;font-family:Arial,Helvetica,sans-serif;font-size:.95rem;color:#eee;resize:none;box-shadow:none;transition:box-shadow .2s ease}.review-banner-textarea:focus{color:#000;outline:none;box-shadow:none}.review-banner-checkbox-container{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.5rem}.review-banner-checkbox-label{display:flex;align-items:center;font-size:.875rem;color:#000}.review-banner-checkbox{width:16px;height:16px;margin-right:8px;accent-color:#000000}.review-banner-actions{display:flex;justify-content:space-between;margin-top:24px;gap:12px}.review-banner-cancel-button,.review-banner-submit-button{background:#ffffff1a;color:#000;padding:10px 20px;border:1px solid rgba(0,0,0,.25);border-radius:12px;font-size:1rem;cursor:pointer;flex:1;box-shadow:none;transition:box-shadow .2s ease,transform .2s ease}.review-banner-cancel-button:hover,.review-banner-submit-button:hover{box-shadow:2px 2px 4px #0000001f,-2px -2px 4px #ffffff40;transform:scale(1.05)}.review-banner-cancel-button:active,.review-banner-submit-button:active{box-shadow:inset 2px 2px 5px #0000001f,inset -2px -2px 5px #ffffff40}.review-banner-cancel-button:focus,.review-banner-submit-button:focus{outline:none;box-shadow:inset 2px 2px 5px #00000026,inset -2px -2px 5px #ffffff4d,0 0 0 2px #ffffff80}.review-banner-toggle-details{margin:1rem 0;background:none;border:none;color:#07c;font-size:.9rem;cursor:pointer}#specialty-details-section label{display:block;margin-top:.75rem}#specialty-details-section select{width:100%;padding:.5rem .75rem;border-radius:12px;border:1px solid rgba(0,0,0,.3);background:#ffffff1a;color:#222;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 30px #ffffff1a;font-size:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:background .3s ease,border-color .3s ease;outline:none}#specialty-details-section select:focus{background:#ffffff26;border:1px solid rgba(0,0,0,.3);border-color:#fff9;box-shadow:0 0 10px #ffffff80}#specialty-details-section select{background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23222' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='4 6 8 10 12 6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem;padding-right:2rem}#cities{position:fixed!important;bottom:env(safe-area-inset-bottom,0);left:50%;transform:translate(-50%) translateY(100%);width:min(96%,1200px);height:clamp(60vh,60vh,60vh);padding:0;border-radius:12px 12px 0 0;border:.5px solid rgb(0,0,0);background:#fff;box-shadow:0 8px 32px #1f268733,inset 0 4px 20px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);z-index:1009;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;animation:slideUpCities .4s ease-out forwards}@keyframes slideUpCities{0%{transform:translate(-50%) translateY(100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}#cities{transition:transform .2s ease-out}#cities:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;border-radius:12px 12px 0 0;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(1px);box-shadow:inset -10px -8px 0 -11px #fff,inset 0 -9px 0 -8px #fff;opacity:.6;z-index:-1;filter:blur(4px) drop-shadow(10px 4px 6px black) brightness(115%)}@media (max-width: 480px){#cities{width:calc(100% - env(safe-area-inset-left,0) - env(safe-area-inset-right,0));height:clamp(60vh,60vh,60vh);border-radius:8px 8px 0 0;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}#cities:after{border-radius:8px 8px 0 0;backdrop-filter:none;-webkit-backdrop-filter:none;filter:blur(.5px) drop-shadow(5px 2px 3px black) brightness(110%)}.modal-content{padding:1rem;gap:.5rem}.shop-results{max-height:100%;padding-bottom:2.5rem}}@media (min-width: 481px) and (max-width: 768px){#cities{width:95%;border-radius:8px 8px 0 0}#cities:after{border-radius:8px 8px 0 0}}@media (min-width: 1200px){#cities{width:80%;max-width:1400px;padding:1.5rem 1.5rem 2rem}}.cities-modal-heading{font-size:clamp(1.5rem,5vw,2rem);color:#c7f5d3;-webkit-text-stroke:.5px rgba(0,0,0,.7);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 2px rgba(0,0,0,.4);font-weight:600;margin:2rem 0 .5rem;padding:0 clamp(.5rem,2vw,.75rem);padding-bottom:12px;text-align:left;transition:text-shadow .2s ease,transform .2s ease}@media (max-width: 480px){.cities-heading{font-size:clamp(1.25rem,4vw,1.5rem);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 1px rgba(0,0,0,.3);margin:1.5rem 0 .5rem;padding:0 .5rem}}@media (min-width: 1200px){.cities-heading{font-size:clamp(1.75rem,4vw,2.25rem);margin:2.5rem 0 1rem}}.cities-modal-sub-heading{font-size:clamp(1rem,5vw,1rem);font-weight:100;color:#000;-webkit-text-stroke:.2px rgba(0,0,0,.7);margin:.12rem 0 .5rem;padding:0 clamp(.5rem,2vw,.75rem);padding-bottom:12px;text-align:left;transition:text-shadow .2s ease,transform .2s ease}@media (max-width: 480px){.cities-sub-heading{font-size:clamp(1.25rem,4vw,1.5rem);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 1px rgba(0,0,0,.3);margin:1.5rem 0 .5rem;padding:0 .5rem}}@media (min-width: 1200px){.cities-sub-heading{font-size:clamp(1.75rem,4vw,2.25rem);margin:2.5rem 0 1rem}}.close-cities-modal{position:absolute;top:clamp(.5rem,2vw,.75rem);right:clamp(.5rem,2vw,.75rem);border:.5px solid rgb(125,125,125);padding:.5rem;cursor:pointer;transition:transform .2s;background:#ffffff26;box-shadow:0 4px 16px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:50%;font-size:1.2rem;line-height:1;color:#000;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;z-index:1010}@media (max-width: 480px){.close-cities-modal{top:.5rem;right:.5rem;padding:.4rem;font-size:1.25rem;width:1.75rem;height:1.75rem;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}}.close-cities-modal:hover{transform:scale(1.1)}.close-cities-modal:active{box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff}.close-cities-modal:focus{outline:none;box-shadow:inset 2px 2px 5px #d1d1d1,inset -2px -2px 5px #fff,0 0 0 2px #b0b0b0}#city-buttons{width:100%;padding:0;background:transparent;border-radius:0;box-shadow:none;display:flex;flex-direction:column;gap:.5rem;position:relative;box-sizing:border-box;flex-grow:1;min-height:0}.city-search-input{width:100%;padding:.5rem .75rem;border:.5px solid black;background:#ffffff26;border-radius:8px;font-size:1rem;color:#000;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease;position:relative;z-index:1010}.city-search-input:focus{outline:none;border-color:#ffffffe6;box-shadow:0 6px 20px #1f268740,inset 0 2px 10px #ffffff4d,0 0 0 2px #ffffffe6}@media (max-width: 480px){.city-search-input{padding:.4rem .6rem;font-size:1rem;border-radius:6px;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}.city-search-input:focus{box-shadow:0 4px 12px #1f268733,inset 0 2px 8px #ffffff4d,0 0 0 1.5px #ffffffe6}}.city-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:300px;overflow-y:auto;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:8px;box-shadow:3px 3px 6px #d1d1d14d,-3px -3px 6px #fff6;z-index:10000;box-sizing:border-box}.city-suggestion-item{background:linear-gradient(145deg,#e0e0e0,#fff);color:#333;padding:8px 12px;font-size:.875rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease;border-radius:0;width:100%;box-sizing:border-box}.city-suggestion-item:hover{background:linear-gradient(145deg,#d1d1d1,#f0f0f0)}.cities-search-button{background:#ffffff26;border:.5px solid black;box-shadow:0 2px 1px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:8px;padding:.7rem 2.25rem;margin-top:12px;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease;align-self:flex-start;font-size:.75rem;color:#000;display:flex;align-items:center;justify-content:center;z-index:1}.cities-search-button:hover{box-shadow:0 6px 20px #1f268740,inset 0 3px 12px #ffffff59;transform:scale(1.05)}.cities-search-button:active{box-shadow:inset 2px 2px 5px #1f26874d,inset -2px -2px 5px #fff6;transform:scale(1)}.cities-search-button:focus{outline:none;box-shadow:inset 2px 2px 5px #1f26874d,inset -2px -2px 5px #fff6,0 0 0 2px #ffffffe6}@media (max-width: 480px){.cities-search-button{padding:.5rem 1rem;font-size:1rem;border-radius:6px;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}.cities-search-button:hover{box-shadow:0 4px 12px #1f268733,inset 0 2px 8px #ffffff4d}.cities-search-button:active{box-shadow:inset 1px 1px 3px #1f26874d,inset -1px -1px 3px #fff6}.cities-search-button:focus{box-shadow:inset 1px 1px 3px #1f26874d,inset -1px -1px 3px #fff6,0 0 0 1.5px #ffffffe6}}.shop-results{overflow-y:auto;flex-grow:1;max-height:100%;padding-right:8px;padding-bottom:2rem;box-sizing:border-box;background:transparent;border-radius:0}.cities-modal-shops-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.cities-modal-shops-list-item{display:flex;justify-content:space-between;align-items:center}.shop-google{border:.5px solid #3B82F6!important;border-radius:8px;padding:.5rem}.shop-supabase{border:.5px solid #c7f5d3!important;border-radius:8px;padding:.5rem}.shop-tag{font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase;display:inline-block;margin-top:.25rem}.shop-tag.google{background-color:#3b82f6;color:#fff}.shop-tag.supabase{background-color:#c7f5d3;color:#fff}#top100{position:fixed;bottom:env(safe-area-inset-bottom,0);left:50%;transform:translate(-50%) translateY(100%);width:100vw;height:clamp(60vh,60vh,60vh);padding:0;border-radius:12px 12px 0 0;border:.5px solid rgb(0,0,0);background:#fff;box-shadow:0 8px 32px #1f268733,inset 0 4px 20px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);z-index:1009;box-sizing:border-box;overflow:hidden;animation:slideUpTop100 .4s ease-out forwards}@keyframes slideUpTop100{0%{transform:translate(-50%) translateY(100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.modal-content{display:flex;flex-direction:column;gap:clamp(.5rem,2vw,.75rem);height:100%;padding:clamp(.75rem,2vw,1rem);box-sizing:border-box;position:relative}.top100-modal-list{list-style:none;padding:0;margin:0;overflow-y:auto;flex-grow:1;height:100%;max-height:100%}.top100-modal-heading,.top100-modal-sub-heading{flex-shrink:0}#top100:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;border-radius:12px 12px 0 0;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(1px);box-shadow:inset -10px -8px 0 -11px #fff,inset 0 -9px 0 -8px #fff;opacity:.6;z-index:-1;filter:blur(4px) drop-shadow(10px 4px 6px black) brightness(115%)}dialog#top100{max-width:none;width:100vw;margin:0;padding:0;border:none}dialog#top100[open]{position:fixed;bottom:env(safe-area-inset-bottom,0);top:auto}dialog#top100:not([open]){display:none}.top100-modal-close-button{position:absolute;top:clamp(.5rem,2vw,.75rem);right:clamp(.5rem,2vw,.75rem);border:.5px solid rgb(125,125,125);padding:.5rem;cursor:pointer;transition:transform .2s;background:#ffffff26;box-shadow:0 4px 16px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:50%;font-size:1.2rem;line-height:1;color:#000;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;z-index:1010}.top100-modal-heading{font-size:clamp(1.5rem,5vw,2rem);color:#c7f5d3;-webkit-text-stroke:.2px rgba(0,0,0,.7);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 2px rgba(0,0,0,.4);font-weight:600;margin:2rem 0 .5rem;text-align:left}.top100-modal-sub-heading{font-size:clamp(1rem,5vw,1rem);font-weight:100;color:#000;-webkit-text-stroke:.2px rgba(0,0,0,.7);margin:.12rem 0 .5rem;padding-bottom:12px;text-align:left}.top100-modal-list-item{display:flex;justify-content:space-between;align-items:center;max-width:95%;padding:.5rem;margin-bottom:.5rem;background:#ffffff26;border:1px solid rgba(255,255,255,.8);box-shadow:0 1px 2px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:8px;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease}.top100-modal-list-item:hover{box-shadow:0 6px 20px #1f268740,inset 0 3px 12px #ffffff59;transform:scale(1.01)}.top100-modal-shop-info{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#000}.top100-modal-actions{display:flex;gap:.5rem}.top100-modal-button{background:#ffffff26;border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 16px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:50%;padding:.4rem;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem}.top100-modal-button:hover{box-shadow:0 6px 20px #1f268740,inset 0 3px 12px #ffffff59;transform:scale(1.1)}.top100-modal-button svg{width:1rem;height:1rem;stroke:#000}.top100-modal-button.favorited svg{fill:#fff}#favorites{position:fixed!important;bottom:env(safe-area-inset-bottom,0);left:50%;transform:translate(-50%) translateY(100%);width:min(96%,1200px);height:clamp(60vh,60vh,60vh);padding:clamp(.75rem,2vw,1rem);border-radius:12px 12px 0 0;border:.5px solid rgb(0,0,0);background:#fff;box-shadow:0 8px 32px #1f268733,inset 0 4px 20px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);display:flex;flex-direction:column;gap:clamp(.5rem,2vw,.75rem);z-index:1009;box-sizing:border-box;overflow-y:auto;animation:slideUpFavorites .4s ease-out forwards}@keyframes slideUpFavorites{0%{transform:translate(-50%) translateY(100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}#favorites:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;border-radius:12px 12px 0 0;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);box-shadow:inset -10px -8px 0 -11px #fff,inset 0 -9px 0 -8px #fff;opacity:.6;z-index:-1;filter:blur(1px) drop-shadow(10px 4px 6px black) brightness(115%)}dialog#favorites[open]{position:fixed;bottom:env(safe-area-inset-bottom,0);top:auto}.favorite-modal-close-button{position:absolute;top:clamp(.5rem,2vw,.75rem);right:clamp(.5rem,2vw,.75rem);border:.5px solid rgb(125,125,125);padding:.5rem;cursor:pointer;transition:transform .2s;background:#ffffff26;box-shadow:0 4px 16px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:50%;font-size:1.2rem;line-height:1;color:#000;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;z-index:1010}.favorite-modal-close-button:hover{box-shadow:0 6px 20px #1f268740,inset 0 3px 12px #ffffff59;transform:scale(1.1)}.favorite-modal-close-button:active{box-shadow:inset 2px 2px 5px #1f26874d,inset -2px -2px 5px #fff6}.favorite-modal-close-button:focus{outline:none;box-shadow:inset 2px 2px 5px #1f26874d,inset -2px -2px 5px #fff6,0 0 0 2px #ffffffe6}.favorite-modal-close-button svg{width:1.5rem;height:1.5rem;stroke:#fff;stroke-width:3}.favorite-modal-heading{font-size:clamp(1.5rem,5vw,2rem);color:#c7f5d3;-webkit-text-stroke:.5px rgba(0,0,0,.7);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 2px rgba(0,0,0,.4);font-weight:600;margin:2rem 0 .5rem;padding:0 clamp(.5rem,2vw,.75rem);padding-bottom:12px;text-align:left;transition:text-shadow .2s ease,transform .2s ease}.favorite-modal-sub-heading{font-size:clamp(1rem,5vw,1rem);font-weight:100;color:#000;-webkit-text-stroke:.2px rgba(0,0,0,.7);margin:.12rem 0 .5rem;padding:0 clamp(.5rem,2vw,.75rem);padding-bottom:12px;text-align:left;transition:text-shadow .2s ease,transform .2s ease}@media (max-width: 480px){.favorite-modal-heading{font-size:clamp(1.25rem,4vw,1.5rem);margin:1.5rem 0 .5rem;padding:0 .5rem}}@media (min-width: 1200px){.favorite-modal-heading{font-size:clamp(1.75rem,4vw,2.25rem);margin:2.5rem 0 1rem}}@media (max-width: 480px){.top100-sub-heading{font-size:clamp(1.25rem,4vw,1.5rem);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 1px rgba(0,0,0,.3);margin:1.5rem 0 .5rem;padding:0 .5rem}}@media (min-width: 1200px){.top100-sub-heading{font-size:clamp(1.75rem,4vw,2.25rem);margin:2.5rem 0 1rem}}.favorite-modal-list{list-style:none;padding:0 0 0 1rem;margin:0;border:.5px solid rgb(185,185,185);border-radius:12px;max-height:clamp(340px,50vh,340px);overflow-y:auto}.favorite-modal-list-item{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;margin-bottom:.5rem;background:#ffffff26;border:1px solid black;box-shadow:0 4px 16px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:8px;transition:box-shadow .2s ease,transform .2s ease}.favorite-modal-list-item:hover{box-shadow:0 6px 20px #1f268740,inset 0 3px 12px #ffffff59;transform:scale(1.02)}.favorite-item{border-bottom:1px solid rgba(255,255,255,.8);padding:.5rem 0;margin:.5rem 0}.favorite-item h4{font-size:1.125rem;font-weight:600;color:#fff;margin:0;text-shadow:0 1px 2px rgba(0,0,0,.3)}.favorite-item p{margin:.25rem 0;font-size:.875rem;color:#ffffffe6;text-shadow:0 1px 2px rgba(0,0,0,.3)}.favorite-modal-shop-info{font-size:.875rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.favorite-modal-actions{display:flex;gap:.5rem}.favorite-modal-button{background:#ffffff26;border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 16px #1f268733,inset 0 2px 10px #ffffff4d;backdrop-filter:blur(2px) saturate(180%);-webkit-backdrop-filter:blur(2px) saturate(180%);border-radius:50%;padding:.4rem;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem}.favorite-modal-button:hover{box-shadow:0 6px 20px #1f268740,inset 0 3px 12px #ffffff59;transform:scale(1.1)}.favorite-modal-button:active{box-shadow:inset 2px 2px 5px #1f26874d,inset -2px -2px 5px #fff6}.favorite-modal-button:focus{outline:none;box-shadow:inset 2px 2px 5px #1f26874d,inset -2px -2px 5px #fff6,0 0 0 2px #ffffffe6}.favorite-modal-button svg{width:1rem;height:1rem;stroke:#fff}.favorite-modal-button.remove svg{stroke:#ff4d4f}.hidden{display:none!important}@media (max-width: 480px){#favorites{width:calc(100% - env(safe-area-inset-left,0) - env(safe-area-inset-right,0));height:clamp(60vh,60vh,60vh);padding:clamp(.5rem,2vw,.75rem);border-radius:8px 8px 0 0;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}#favorites:after{border-radius:8px 8px 0 0;backdrop-filter:none;-webkit-backdrop-filter:none;filter:blur(.5px) drop-shadow(5px 2px 3px black) brightness(110%)}.favorite-modal-close-button{top:.5rem;right:.5rem;padding:.4rem;width:1.75rem;height:1.75rem;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}.favorite-modal-close-button svg{width:1.25rem;height:1.25rem;stroke-width:2.5}.favorite-modal-heading{font-size:clamp(1.25rem,4vw,1.5rem);-webkit-text-stroke:.3px rgba(31,38,135,.7);text-shadow:0 1px 2px rgba(31,38,135,.3),0 1px 1px rgba(0,0,0,.3),-.5px -.5px 0 rgba(31,38,135,.7),.5px -.5px 0 rgba(31,38,135,.7),-.5px .5px 0 rgba(31,38,135,.7),.5px .5px 0 rgba(31,38,135,.7);margin:1.5rem 0 .5rem;padding:0 .5rem}.favorite-modal-list{max-height:clamp(150px,30vh,200px)}.favorite-modal-list-item{padding:.4rem;margin-bottom:.4rem;border-radius:6px;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}.favorite-modal-list-item:hover{box-shadow:0 4px 12px #1f268733,inset 0 2px 8px #ffffff4d}.favorite-modal-button{padding:.3rem;width:1.5rem;height:1.5rem;backdrop-filter:blur(1px) saturate(150%);-webkit-backdrop-filter:blur(1px) saturate(150%)}.favorite-modal-button svg{width:.875rem;height:.875rem}}@media (min-width: 481px) and (max-width: 768px){#favorites{width:95%;height:clamp(60vh,60vh,60vh);padding:clamp(.75rem,2vw,1rem);border-radius:8px 8px 0 0}#favorites:after{border-radius:8px 8px 0 0}}@media (min-width: 1200px){#favorites{width:80%;max-width:1400px;height:clamp(60vh,60vh,60vh);padding:1.5rem}.favorite-modal-heading{font-size:clamp(1.75rem,4vw,2.25rem);-webkit-text-stroke:.6px rgba(31,38,135,.7)}}.shop-details-reviews-container{max-height:100px}.shop-details-review-card{width:150px;padding:8px}.shop-placeholder-image{max-width:100%;height:auto;border-radius:8px;margin-bottom:16px}@media (max-width: 480px){.shop-placeholder-image{max-height:150px}}#maps-prompt-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#fff;display:flex;align-items:center;justify-content:center;z-index:1008}#maps-prompt-modal>div{backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(5px);background:#ffffff26;border:.5px solid black;box-shadow:5px 5px 10px #d1d1d180,-5px -5px 10px #fff9,inset 3px 3px 6px #d1d1d166,inset -3px -3px 6px #fff9;border-radius:15px;padding:15px;width:85%;max-width:350px;text-align:center}#maps-prompt-modal p{margin-bottom:20px;color:#333;font-size:16px}#google-maps-btn,#apple-maps-btn{background:#fff3;border:.5px solid #333;box-shadow:2px 2px 4px #d1d1d166,inset 1px 1px 2px #ffffff4d;border-radius:8px;padding:8px 16px;cursor:pointer;color:#333;font-size:14px}#google-maps-btn{margin-right:10px}#taste-profile-btn{position:fixed;top:11rem;right:1.5rem;width:3.5rem;height:3.5rem;background:linear-gradient(145deg,#e0e0e0,#fff);border:none;border-radius:50%;box-shadow:5px 5px 10px #d1d1d1,-5px -5px 10px #fff;display:flex;align-items:center;justify-content:center;z-index:1000;transition:box-shadow .2s ease}#taste-profile-btn:hover{background:#f0f0f0}#taste-profile-btn img{width:60%;height:60%}#quiz-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0003;display:flex;justify-content:center;align-items:center;backdrop-filter:blur(5px) saturate(180%);-webkit-backdrop-filter:blur(5px) saturate(180%);z-index:1009}.quiz-container{background:#fff3;padding:20px;border-radius:16px;box-shadow:0 0 1px #0000001a,0 4px 8px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:80%;max-width:500px}#quiz-question{font-size:24px;margin-bottom:20px;color:#fff;text-shadow:0 0 10px rgba(0,0,0,.2)}#quiz-options{margin-bottom:20px}.quiz-option{width:100%;padding:10px;margin-bottom:10px;border:none;border-radius:10px;background:#ffffff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;color:#fff}.quiz-option:hover{background:#ffffff80}#quiz-next-btn,#quiz-close-btn{padding:10px 20px;border:none;border-radius:10px;background:#ffffff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer}#quiz-next-btn:hover,#quiz-close-btn:hover{background:#ffffff80}.quiz-option,#quiz-next-btn,#quiz-close-btn{transition:background .2s ease-in-out}#quiz-modal{animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.taste-profile-wheel{position:relative;width:300px;height:300px;border-radius:50%;background-image:conic-gradient(#964b00,#964b00 72deg,#786c3b 72deg,#786c3b 144deg,#a67f59 144deg,#a67f59 216deg,#452b1f 216deg,#452b1f 288deg,#630 288deg,#630 360deg);transition:transform 5s cubic-bezier(.33,1,.68,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff3;box-shadow:0 0 1px #0000001a,0 4px 8px #0000001a;margin:0 auto;z-index:10000}.taste-profile-wheel:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;background-color:#fff;border-radius:50%}.profile-name{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:24px;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(0,0,0,.2)}.hidden{display:none}.body-no-scroll{overflow:hidden;height:100vh}
