@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_31383292-module__c4DlfG__className{font-family:Inter,Inter Fallback;font-style:normal}
:root{--color-primary:#78c021;--color-on-primary:#fff;--color-primary-container:#92db3d;--color-on-primary-container:#2e5200;--color-secondary:#396b00;--color-on-secondary:#fff;--color-secondary-container:#8fda49;--color-on-secondary-container:#2a5200;--color-tertiary:#5d5f5f;--color-on-tertiary:#fff;--color-tertiary-container:#c6c6c7;--color-on-tertiary-container:#444646;--color-error:#dc2828;--color-on-error:#fff;--color-error-container:#fdcece;--color-on-error-container:#841515;--color-background:#fdf7fd;--color-on-background:#1c1a1e;--color-surface:#fdf7fd;--color-on-surface:#1c1a1e;--color-surface-variant:#e4e2e2;--color-on-surface-variant:#474848;--color-outline:#787878;--color-outline-variant:#c7c6c6;--color-inverse-surface:#312e33;--color-inverse-on-surface:#f5eff5;--color-inverse-primary:#92db3d;--color-surface-dim:#ded8de;--color-surface-bright:#fdf7fd;--color-surface-container-lowest:#fff;--color-surface-container-low:#f8f2f8;--color-surface-container:#f3edf3;--color-surface-container-high:#ebe5eb;--color-surface-container-highest:#e5e0e6}[data-theme=dark]{--color-primary:#78c021;--color-on-primary:#1e3800;--color-primary-container:#2e5200;--color-on-primary-container:#abf859;--color-secondary:#8fda49;--color-on-secondary:#1b3800;--color-secondary-container:#2a5200;--color-on-secondary-container:#abf764;--color-tertiary:#c6c6c7;--color-on-tertiary:#2f3131;--color-tertiary-container:#444646;--color-on-tertiary-container:#e3e3e3;--color-error:#ff6b6b;--color-on-error:#7a1f1f;--color-error-container:#7a1f1f;--color-on-error-container:#ffd6d6;--color-background:#f0f;--color-on-background:#e5e0e6;--color-surface:#f0f;--color-on-surface:#e5e0e6;--color-surface-variant:#474848;--color-on-surface-variant:#c7c6c6;--color-outline:#919191;--color-outline-variant:#474848;--color-inverse-surface:#e5e0e6;--color-inverse-on-surface:#312e33;--color-inverse-primary:#3e6b00;--color-surface-dim:#f0f;--color-surface-bright:#f0f;--color-surface-container-lowest:#f0f;--color-surface-container-low:#1c1a1e;--color-surface-container:#f0f;--color-surface-container-high:#f0f;--color-surface-container-highest:#f0f}:root{--font-family-sans:Open Sans;--font-family-display:Playfair Display;--font-family-mono:JetBrains Mono;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-size-7xl:4.5rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--spacing-0:0;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-7:1.75rem;--spacing-8:2rem;--spacing-9:2.25rem;--spacing-10:2.5rem;--spacing-11:2.75rem;--spacing-12:3rem;--spacing-14:3.5rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-28:7rem;--spacing-32:8rem;--spacing-36:9rem;--spacing-40:10rem;--spacing-44:11rem;--spacing-48:12rem;--spacing-52:13rem;--spacing-56:14rem;--spacing-60:15rem;--spacing-64:16rem;--spacing-72:18rem;--spacing-80:20rem;--spacing-96:24rem;--spacing-px:1px;--spacing-0\.5:.125rem;--spacing-1\.5:.375rem;--spacing-2\.5:.625rem;--spacing-3\.5:.875rem;--radius-none:0;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-3xl:2rem;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000a;--shadow-lg:0 10px 15px #00000014, 0 4px 6px #00000008;--shadow-xl:0 20px 25px #0000001a, 0 8px 10px #0000000a;--shadow-2xl:0 25px 50px #00000026;--shadow-inner:inset 0 2px 4px #0000000d;--shadow-glow-primary:0 0 20px #6751a459;--shadow-glow-secondary:0 0 20px #625b7159;--shadow-glow-tertiary:0 0 20px #7f536159;--shadow-glow-error:0 0 20px #a1303059;--elevation-0:none;--elevation-1:0 1px 3px #00000014, 0 1px 2px #0000000a;--elevation-2:0 3px 6px #0000001a, 0 1px 3px #0000000f;--elevation-3:0 6px 12px #0000001f, 0 2px 4px #0000000f;--elevation-4:0 10px 20px #0000001f, 0 3px 6px #0000000f;--elevation-5:0 15px 30px #00000024, 0 5px 10px #00000014;--container-width:1120px;--z-index-base:0;--z-index-inset:1;--z-index-float:2;--z-index-nav:100;--z-index-controls:1000;--z-index-modal:2000;--z-index-onboarding:3000;--z-index-lightbox:9999;--z-index-toast:99999;--display-large-font-size:64px;--display-large-text-decoration:none;--display-large-font-family:"Inter";--display-large-font-weight:500;--display-large-font-style:normal;--display-large-font-stretch:normal;--display-large-letter-spacing:-1.92px;--display-large-line-height:89.6px;--display-large-paragraph-indent:0;--display-large-paragraph-spacing:0;--display-large-text-case:none;--display-medium-font-size:54px;--display-medium-text-decoration:none;--display-medium-font-family:"Inter";--display-medium-font-weight:500;--display-medium-font-style:normal;--display-medium-font-stretch:normal;--display-medium-letter-spacing:-1.08px;--display-medium-line-height:75.6px;--display-medium-paragraph-indent:0;--display-medium-paragraph-spacing:0;--display-medium-text-case:none;--display-small-font-size:40px;--display-small-text-decoration:none;--display-small-font-family:"Inter";--display-small-font-weight:400;--display-small-font-style:normal;--display-small-font-stretch:normal;--display-small-letter-spacing:-1px;--display-small-line-height:56px;--display-small-paragraph-indent:0;--display-small-paragraph-spacing:0;--display-small-text-case:none;--headline-large-font-size:38px;--headline-large-text-decoration:none;--headline-large-font-family:"Inter";--headline-large-font-weight:500;--headline-large-font-style:normal;--headline-large-font-stretch:normal;--headline-large-letter-spacing:-.76px;--headline-large-line-height:53.2px;--headline-large-paragraph-indent:0;--headline-large-paragraph-spacing:0;--headline-large-text-case:none;--headline-medium-font-size:30px;--headline-medium-text-decoration:none;--headline-medium-font-family:"Inter";--headline-medium-font-weight:500;--headline-medium-font-style:normal;--headline-medium-font-stretch:normal;--headline-medium-letter-spacing:-.54px;--headline-medium-line-height:42px;--headline-medium-paragraph-indent:0;--headline-medium-paragraph-spacing:0;--headline-medium-text-case:none;--headline-small-font-size:28px;--headline-small-text-decoration:none;--headline-small-font-family:"Inter";--headline-small-font-weight:500;--headline-small-font-style:normal;--headline-small-font-stretch:normal;--headline-small-letter-spacing:-.28px;--headline-small-line-height:39.2px;--headline-small-paragraph-indent:0;--headline-small-paragraph-spacing:0;--headline-small-text-case:none;--title-large-font-size:26px;--title-large-text-decoration:none;--title-large-font-family:"Inter";--title-large-font-weight:500;--title-large-font-style:normal;--title-large-font-stretch:normal;--title-large-letter-spacing:-.26px;--title-large-line-height:36.4px;--title-large-paragraph-indent:0;--title-large-paragraph-spacing:0;--title-large-text-case:none;--title-medium-font-size:20px;--title-medium-text-decoration:none;--title-medium-font-family:"Inter";--title-medium-font-weight:500;--title-medium-font-style:normal;--title-medium-font-stretch:normal;--title-medium-letter-spacing:-.2px;--title-medium-line-height:28px;--title-medium-paragraph-indent:0;--title-medium-paragraph-spacing:0;--title-medium-text-case:none;--title-small-font-size:18px;--title-small-text-decoration:none;--title-small-font-family:"Inter";--title-small-font-weight:500;--title-small-font-style:normal;--title-small-font-stretch:normal;--title-small-letter-spacing:-.18px;--title-small-line-height:25.2px;--title-small-paragraph-indent:0;--title-small-paragraph-spacing:0;--title-small-text-case:none;--body-large-font-size:16px;--body-large-text-decoration:none;--body-large-font-family:"Inter";--body-large-font-weight:400;--body-large-font-style:normal;--body-large-font-stretch:normal;--body-large-letter-spacing:-.16px;--body-large-line-height:28.8px;--body-large-paragraph-indent:0;--body-large-paragraph-spacing:0;--body-large-text-case:none;--body-medium-font-size:14px;--body-medium-text-decoration:none;--body-medium-font-family:"Inter";--body-medium-font-weight:400;--body-medium-font-style:normal;--body-medium-font-stretch:normal;--body-medium-letter-spacing:-.14px;--body-medium-line-height:19.6px;--body-medium-paragraph-indent:0;--body-medium-paragraph-spacing:0;--body-medium-text-case:none;--body-small-font-size:12px;--body-small-text-decoration:none;--body-small-font-family:"Inter";--body-small-font-weight:400;--body-small-font-style:normal;--body-small-font-stretch:normal;--body-small-letter-spacing:-.12px;--body-small-line-height:16.8px;--body-small-paragraph-indent:0;--body-small-paragraph-spacing:0;--body-small-text-case:none;--label-large-font-size:14px;--label-large-text-decoration:none;--label-large-font-family:"Inter";--label-large-font-weight:500;--label-large-font-style:normal;--label-large-font-stretch:normal;--label-large-letter-spacing:-.28px;--label-large-line-height:19.6px;--label-large-paragraph-indent:0;--label-large-paragraph-spacing:0;--label-large-text-case:none;--label-medium-font-size:12px;--label-medium-text-decoration:none;--label-medium-font-family:"Inter";--label-medium-font-weight:500;--label-medium-font-style:normal;--label-medium-font-stretch:normal;--label-medium-letter-spacing:-.24px;--label-medium-line-height:16.8px;--label-medium-paragraph-indent:0;--label-medium-paragraph-spacing:0;--label-medium-text-case:none;--label-small-font-size:11px;--label-small-text-decoration:none;--label-small-font-family:"Inter";--label-small-font-weight:500;--label-small-font-style:normal;--label-small-font-stretch:normal;--label-small-letter-spacing:-.22px;--label-small-line-height:15.4px;--label-small-paragraph-indent:0;--label-small-paragraph-spacing:0;--label-small-text-case:none}
:root{font-family:var(--body-medium-font-family);color:var(--color-on-surface);background:var(--color-surface);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html{width:100%;height:100%;margin:0;padding:0}body{background:var(--color-surface);color:var(--color-on-surface);font-family:var(--body-medium-font-family);-webkit-font-smoothing:antialiased;width:100%;height:100%;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}#map{width:100%;height:100%;position:absolute;inset:0}.map-root{z-index:1;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.leaflet-rotate-pane{will-change:transform}#controls{top:max(30px, env(safe-area-inset-top,30px));z-index:var(--z-index-controls);align-items:center;gap:8px;display:flex;position:fixed;right:12px}#controls button{height:36px;font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);line-height:var(--label-large-line-height);letter-spacing:var(--label-large-letter-spacing);border:1px solid var(--color-outline);border-radius:var(--radius-full);color:var(--color-primary);cursor:pointer;background:0 0;padding:0 16px;transition:background .15s,box-shadow .15s}#controls button:hover{background:color-mix(in srgb, var(--color-primary) 12%, transparent)}#search-bar{bottom:max(30px, env(safe-area-inset-bottom,30px));z-index:var(--z-index-controls);border-radius:var(--radius-2xl);border:2px solid var(--color-primary);background:#fff;align-items:center;gap:0;width:min(92vw,450px);height:56px;padding:0 16px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 16px #00000059,0 2px 6px #00000040}#filter-btn{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-left:8px;transition:background .15s,transform .15s;display:flex}#filter-btn:hover{background:color-mix(in srgb, var(--color-primary) 85%, black)}#filter-btn.active{background:color-mix(in srgb, var(--color-primary) 60%, black);transform:scale(.95)}#search-icon{color:#000;opacity:.5;flex-shrink:0;justify-content:center;align-items:center;margin-right:8px;display:flex}#search-bar input{color:#000;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-size:16px}#search-bar input::placeholder{color:#000;opacity:.4}#user-profile{cursor:pointer;border:2px solid var(--color-primary);border-radius:50%;flex-shrink:0;width:44px;height:44px;transition:opacity .15s;overflow:hidden}#user-profile:hover{opacity:.75}.profile-modal{justify-content:center;align-items:center;animation:.3s profile-backdrop-in}.profile-modal.is-closing{animation:.26s forwards profile-backdrop-out}@keyframes profile-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes profile-backdrop-out{0%{opacity:1}to{opacity:0}}.profile-modal .modal-content.profile-sheet{--sheet-pct:80%;width:100%;min-width:0;max-width:440px;max-height:none;height:var(--sheet-pct);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;box-shadow:var(--elevation-4);overscroll-behavior:contain;will-change:transform;flex-direction:column;margin:0;padding:0;transition:transform .3s cubic-bezier(.32,.72,0,1),height .3s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.profile-modal .profile-sheet.is-dragging{transition:none}.profile-modal .profile-sheet.is-closing,.profile-modal .profile-sheet.sheet-enter{transform:translate(-50%)translateY(100%)}.sheet-handle{z-index:2;background:var(--color-surface-container-high);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;height:18px;display:flex;position:sticky;top:0}.sheet-handle:before{content:"";border-radius:var(--radius-full);background:var(--color-outline-variant);width:44px;height:6px}.sheet-handle:active{cursor:grabbing}.sheet-handle:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.profile-modal-body{text-align:center;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;align-items:center;gap:0;padding:16px 24px 20px;display:flex}.profile-modal-body:active{cursor:grabbing}.profile-modal-avatar{background:var(--color-primary);width:72px;height:72px;color:var(--color-on-primary);font-family:var(--headline-small-font-family);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:600;display:flex;overflow:hidden}.profile-modal-avatar img{object-fit:cover;width:100%;height:100%}.profile-modal-name{font-family:var(--body-large-font-family);color:var(--color-on-surface);margin:8px 0 0;font-size:1rem;font-weight:500}.profile-modal-detail{font-family:var(--body-medium-font-family);color:var(--color-on-surface-variant);word-break:break-all;margin:0;font-size:.875rem}.profile-modal .modal-actions{flex-shrink:0;justify-content:center;height:auto;min-height:fit-content;margin-top:auto;padding:16px 24px 24px}#controls .modal-actions .profile-modal-logout{width:100%;height:48px;font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);letter-spacing:var(--label-large-letter-spacing);color:red;border-radius:var(--radius-full);cursor:pointer;background-color:#0000;border:.5px solid #ff000080;justify-content:center;align-items:center;padding:0 24px;font-size:16px;transition:background .15s,transform .1s;display:flex}#controls .modal-actions .profile-modal-logout:active:not(:disabled){transform:scale(.97)}#controls .modal-actions .profile-modal-logout:hover:not(:disabled){background:#ff000014}#controls .modal-actions .profile-modal-logout:disabled{opacity:.6;cursor:default}.viewed-section{border-top:1px solid var(--color-outline-variant);text-align:left;flex:auto;min-height:0;margin-top:8px;padding:12px 24px 0;overflow-y:auto}.viewed-header{background-color:#0000;justify-content:space-between;align-items:center;padding:8px 0;display:flex;position:static}.viewed-header h3{font-family:var(--title-medium-font-family);color:var(--color-on-surface);margin:0;font-size:16px;font-weight:600;line-height:24px}.viewed-clear{background:var(--color-error);font-family:var(--label-large-font-family);font-size:var(--label-large-font-size);font-weight:var(--label-large-font-weight);color:var(--color-on-error);cursor:pointer;border-radius:var(--radius-full);border:none;padding:4px 12px;transition:background .15s}.viewed-clear:hover{background:color-mix(in srgb, var(--color-error) 85%, black)}.viewed-share{border:1px solid var(--color-primary);font-family:var(--label-medium-font-family);font-size:var(--label-medium-font-size);font-weight:var(--label-medium-font-weight);color:var(--color-primary);cursor:pointer;border-radius:var(--radius-full);background-color:#0000;padding:4px 12px;transition:background .15s}.viewed-share:hover{background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.viewed-header-actions{align-items:center;gap:8px;display:flex}.viewed-score{font-family:var(--label-medium-font-family);font-size:var(--label-medium-font-size);font-weight:var(--label-medium-font-weight);color:var(--color-primary);white-space:nowrap}.viewed-rent{border:1px solid var(--color-primary);color:var(--color-primary);font-family:var(--label-medium-font-family);font-size:var(--label-medium-font-size);font-weight:var(--label-medium-font-weight);border-radius:var(--radius-full);cursor:pointer;background-color:#0000;flex-shrink:0;padding:4px 10px;transition:background .15s}.viewed-rent:hover{background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.viewed-rent:disabled{opacity:.5;cursor:default}.viewed-list{flex-direction:column;gap:4px;max-height:400px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.viewed-empty{min-height:0;color:var(--color-on-surface-variant);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.viewed-empty-icon{border-radius:var(--radius-full);background:var(--color-surface-container);width:48px;height:48px;color:var(--color-on-surface-variant);justify-content:center;align-items:center;display:flex}.viewed-empty-title{font-family:var(--body-large-font-family);color:var(--color-on-surface);margin:0;font-size:1rem;font-weight:500}.viewed-empty-note{max-width:260px;font-family:var(--body-medium-font-family);margin:0;font-size:.875rem}.viewed-item{border-radius:var(--radius-lg);cursor:pointer;align-items:center;gap:12px;padding:8px;transition:background .15s;display:flex}.viewed-item:hover{background:var(--color-surface-container)}.viewed-thumb{border-radius:var(--radius-sm);background:var(--color-surface-container);width:48px;height:48px;color:var(--color-on-surface-variant);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.viewed-thumb img{object-fit:cover;width:100%;height:100%;display:block}.viewed-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.viewed-name{color:var(--color-on-surface);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;overflow:hidden}.viewed-price{color:var(--color-on-surface-variant);font-size:.75rem}.viewed-location{color:var(--color-on-surface-variant);opacity:.8;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}#profile-avatar{object-fit:cover;width:100%;height:100%;display:block}#profile-initials{background:var(--color-primary);width:100%;height:100%;color:var(--color-on-primary);font-family:var(--label-large-font-family);justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;line-height:1;display:flex}@media (max-width:768px){#controls{top:max(30px, env(safe-area-inset-top,30px));right:12px}#controls button{height:32px;padding:0 12px;font-size:.8125rem}#user-profile{width:40px;height:40px}#agent-banner{top:max(20px, env(safe-area-inset-top,20px));z-index:var(--z-index-controls);background:var(--color-surface-container-high);max-width:92vw;color:var(--color-on-surface);border-radius:var(--radius-full);font-family:var(--label-large-font-family);font-size:var(--label-large-font-size);font-weight:var(--label-large-font-weight);align-items:center;gap:12px;padding:8px 10px 8px 16px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #00000029}#agent-banner.hidden{display:none}#agent-banner-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#agent-banner-close{background:var(--color-primary);color:var(--color-on-primary);font-family:var(--label-large-font-family);font-size:var(--label-large-font-size);font-weight:var(--label-large-font-weight);border-radius:var(--radius-full);cursor:pointer;border:none;flex-shrink:0;padding:6px 14px;transition:background .15s}#agent-banner-close:hover{background:color-mix(in srgb, var(--color-primary) 85%, black)}#search-bar{bottom:max(20px, env(safe-area-inset-bottom,20px));width:calc(100vw - 70px);height:56px}}@media (max-width:480px){.auth-page{padding-left:4px;padding-right:4px}#pin-modal .modal-content{padding:26px 20px 24px}#pin-modal .modal-content form{gap:12px}.modal-content{min-width:0;max-width:calc(100vw - 24px);margin:0 12px;padding:16px}.auth-card{padding:26px 20px 24px}.auth-card form{gap:12px}.auth-card .float-field input{height:52px}.auth-card h1{margin-bottom:2px}.auth-card .auth-subtitle{margin-bottom:16px}.continue-arrow{display:none}#controls button{height:28px;padding:0 10px;font-size:.75rem}#user-profile{border-width:1.5px;width:36px;height:36px}#profile-initials{font-size:.875rem}}.modal{z-index:var(--z-index-modal);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-surface-container-high);border-radius:var(--radius-2xl);box-shadow:var(--elevation-3);min-width:300px;max-width:400px;max-height:85vh;padding:24px;overflow-y:auto}.modal-content h2{font-family:var(--headline-small-font-family);font-weight:var(--headline-small-font-weight);font-size:var(--headline-small-font-size);line-height:var(--headline-small-line-height);color:var(--color-on-surface);margin:0 0 16px}#pin-modal .modal-content{padding:32px 28px 28px}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h2{margin:0}.modal-close{border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-on-surface-variant);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.modal-close:hover{background:color-mix(in srgb, var(--color-on-surface-variant) 10%, transparent)}#pin-modal .modal-content form{gap:16px}#pin-modal .modal-content .modal-actions button{width:100%}#pin-modal .modal-content>form>label{gap:8px}#pin-modal .modal-content input:not([type=file]):not([type=checkbox]){padding:0 14px}#pin-modal .agent-fee-field{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex}#pin-modal .agent-fee-field>span{color:var(--color-on-surface);font-size:14px;font-weight:600}#pin-modal .agent-fee-options{gap:6px;display:flex}#pin-modal .agent-fee-btn{border:1px solid var(--color-outline-variant);color:var(--color-on-surface);cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;transition:background .15s,color .15s,border-color .15s}#pin-modal .agent-fee-btn:hover{border-color:var(--color-primary)}#pin-modal .agent-fee-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.modal-content form{flex-direction:column;gap:16px;display:flex}.modal-content label{font-family:var(--body-medium-font-family);font-weight:var(--body-medium-font-weight);font-size:var(--body-medium-font-size);line-height:var(--body-medium-line-height);letter-spacing:var(--body-medium-letter-spacing);color:var(--color-on-surface-variant);flex-direction:column;gap:4px;display:flex}.modal-content input:not([type=file]):not([type=checkbox]){height:40px;font-family:var(--body-large-font-family);font-weight:var(--body-large-font-weight);font-size:var(--body-large-font-size);border:1px solid var(--color-outline);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-on-surface);outline:none;padding:0 12px;transition:border-color .4s,box-shadow .4s}.modal-content input:not([type=file]):not([type=checkbox]):focus{border-color:var(--color-primary);box-shadow:0 2px 6px color-mix(in srgb, var(--color-primary) 12%, transparent)}.modal-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:16px;display:flex}.modal-actions button{height:40px;font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);letter-spacing:var(--label-large-letter-spacing);border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:0 20px;transition:background .15s,color .15s,opacity .15s;display:inline-flex}.continue-arrow{color:#fff;flex-shrink:0;width:20px;height:20px}.modal-actions button:first-child{background:var(--color-surface-container-high);color:var(--color-primary)}.modal-actions button:first-child:hover{background:var(--color-surface-container-highest)}.modal-actions button:last-child{background:var(--color-primary);color:var(--color-on-primary)}.modal-actions button:last-child:hover{background:var(--color-primary-container);color:var(--color-on-primary-container)}.modal-actions button:disabled{opacity:.6;cursor:default}.onboarding-overlay{z-index:var(--z-index-onboarding);background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.onboarding-card{background:var(--color-surface);border-radius:var(--radius-2xl);width:100%;max-width:400px;box-shadow:var(--elevation-3);text-align:center;padding:36px 28px 24px;animation:.3s cubic-bezier(.22,.61,.36,1) auth-card-in;position:relative}.onboarding-skip{font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);color:var(--color-on-surface-variant);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;padding:4px 8px;position:absolute;top:14px;right:16px}.onboarding-skip:hover{color:var(--color-primary)}.onboarding-step{animation:.8s cubic-bezier(.22,.61,.36,1) onboarding-step-in}.onboarding-icon{border-radius:var(--radius-xl);background:var(--color-primary-container);width:64px;height:64px;color:var(--color-on-primary-container);justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.onboarding-icon svg{width:32px;height:32px}.onboarding-card h2{font-family:var(--headline-small-font-family);font-size:1.25rem;line-height:var(--headline-small-line-height);color:var(--color-on-surface);margin:0}.onboarding-card p{font-family:var(--body-medium-font-family);font-size:var(--body-medium-font-size);color:var(--color-on-surface-variant);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:19.6px;display:-webkit-box;overflow:hidden}.onboarding-dots{justify-content:center;gap:6px;margin:16px 0 0;display:flex}.onboarding-dots span{border-radius:var(--radius-full);background:var(--color-outline-variant);width:8px;height:8px;transition:background .2s,width .2s}.onboarding-dots span.active{background:var(--color-primary);width:22px}.onboarding-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.onboarding-actions button{height:44px;font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);letter-spacing:var(--label-large-letter-spacing);border-radius:var(--radius-full);cursor:pointer;border:none;padding:0 24px;transition:background .15s,color .15s}.onboarding-actions .onboarding-back{background:var(--color-surface-container-high);color:var(--color-on-surface);flex:1}.onboarding-actions .onboarding-back:hover{background:var(--color-surface-container-highest)}.onboarding-actions .onboarding-next{background:var(--color-primary);color:var(--color-on-primary);flex:1}.onboarding-actions .onboarding-next:hover{background:var(--color-primary-container);color:var(--color-on-primary-container)}.filter-fields{flex-direction:column;gap:12px;display:flex}#filter-modal .filter-fields{padding:0 14px}#filter-modal #price-range{margin-top:32px}#filter-modal .noUi-target{height:6px;box-shadow:none;border-radius:var(--radius-full);background:var(--color-surface-container-highest);border:none}#filter-modal .noUi-connect{background:var(--color-primary)}#filter-modal .noUi-horizontal .noUi-handle{border:2px solid var(--color-primary);width:24px;height:24px;box-shadow:none;cursor:grab;background:#fff;border-radius:50%;top:-9px;right:-12px}#filter-modal .noUi-horizontal .noUi-handle:active{cursor:grabbing}#filter-modal .noUi-handle:before,#filter-modal .noUi-handle:after{display:none}#filter-modal .noUi-tooltip{border:1px solid var(--color-outline-variant);background:var(--color-surface-container-lowest);color:var(--color-on-surface);border-radius:var(--radius-md);white-space:nowrap;padding:3px 8px;font-size:.75rem;font-weight:600}.auth-card .float-field input:focus{background:var(--color-surface-container-highest);border-bottom:2px solid var(--color-primary);box-shadow:0 2px 6px color-mix(in srgb, var(--color-primary) 12%, transparent)}.auth-card .float-field.password-field input{padding-right:44px}.auth-card .float-field.phone-field input{padding-left:56px}.auth-card .float-field .phone-prefix{font-family:var(--body-large-font-family);font-size:var(--body-large-font-size);color:var(--color-on-surface-variant);pointer-events:none;opacity:0;transition:opacity .15s;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.auth-card .float-field .phone-prefix.visible{opacity:1}.auth-page .float-field .phone-prefix{color:#555}.auth-card .float-field input.has-value{border-bottom:2px solid var(--color-primary);box-shadow:0 2px 6px color-mix(in srgb, var(--color-primary) 12%, transparent)}.auth-card .float-field input.confirm-field:not(.has-value):focus{border-bottom:1px solid var(--color-outline-variant);box-shadow:none;background:var(--color-surface-container)}.auth-page .float-field input.confirm-field:not(.has-value):focus{background:#f5f5f5}.auth-error{color:var(--color-error);font-family:var(--body-medium-font-family);margin-top:-8px;font-size:.8125rem;line-height:1.4}.auth-snackbar{text-align:center;box-sizing:border-box;width:100%;color:var(--color-error);border-radius:var(--radius-lg);font-family:var(--body-medium-font-family);background:#ffe9e6;border:1px solid #f3b3ac;justify-content:center;align-items:center;margin:0 auto 16px;padding:10px 14px;font-size:.8125rem;font-weight:500;line-height:1.4;display:flex}.field-error{color:var(--color-error);font-family:var(--body-medium-font-family);margin-top:2px;font-size:.8125rem;line-height:1.4}.auth-success{text-align:center;box-sizing:border-box;color:#1b6d24;border-radius:var(--radius-lg);width:100%;font-family:var(--body-medium-font-family);background:#e8f6e0;border:1px solid #b2d8ac;justify-content:center;align-items:center;margin:0 auto 16px;padding:10px 14px;font-size:.8125rem;font-weight:500;line-height:1.4;display:flex}.hidden{display:none!important}.password-field{align-items:center;display:flex;position:relative}.password-field input{padding-right:40px}.password-toggle{cursor:pointer;width:28px;height:28px;color:var(--color-on-surface-variant);border-radius:var(--radius-full);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:18px;display:flex;position:absolute;right:8px}.password-toggle .toggle-icon{width:20px;height:20px}.password-toggle:hover{background:#0000000f}.terms-label{font-family:var(--body-medium-font-family);font-size:var(--body-medium-font-size);color:var(--color-on-surface-variant);cursor:pointer;align-items:flex-start;gap:8px;margin-top:4px;display:flex}.terms-label input{opacity:0;width:0;height:0;position:absolute}.terms-label .checkbox{box-sizing:border-box;border:2px solid var(--color-outline);border-radius:4px;flex-shrink:0;width:18px;height:18px;margin-top:1px;transition:background .15s,border-color .15s;position:relative}.terms-label .checkbox:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;transition:transform .15s;position:absolute;top:1px;left:4px;transform:rotate(45deg)scale(0)}.terms-label input:checked+.checkbox{background:var(--color-primary);border-color:var(--color-primary)}.terms-label input:checked+.checkbox:after{transform:rotate(45deg)scale(1)}.terms-label input:focus-visible+.checkbox{outline:2px solid var(--color-primary);outline-offset:2px}.terms-label .terms-text a{color:var(--color-primary);font-weight:500;text-decoration:none}.terms-label .terms-text a:hover{text-decoration:underline}#auth-toggle-text{text-align:center;font-family:var(--body-medium-font-family);font-size:var(--body-medium-font-size);color:var(--color-on-surface-variant);margin-top:16px}#auth-toggle-text a{color:var(--color-primary);cursor:pointer;font-weight:500;text-decoration:none}#auth-toggle-text a:hover{text-decoration:underline}.auth-divider{color:var(--color-on-surface-variant);font-family:var(--label-medium-font-family);font-size:var(--label-medium-font-size);align-items:center;gap:8px;margin:14px 0 12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-top:1px solid var(--color-outline-variant);flex:1}.google-btn{width:100%;height:48px;font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);border:1px solid var(--color-outline);border-radius:var(--radius-full);cursor:pointer;color:var(--color-on-surface);background:0 0;justify-content:center;align-items:center;gap:10px;transition:background .15s,border-color .15s;display:flex}.google-btn:hover{background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-color:var(--color-primary)}.search-marker{background:var(--color-error);border:3px solid var(--color-on-primary);border-radius:50%;width:20px;height:20px;box-shadow:0 0 8px #0006}.location-radar{background:0 0!important;border:none!important}.location-beam{width:140px;height:140px;z-index:var(--z-index-base);pointer-events:none;background:conic-gradient(from -28deg,#78be2066 0deg 56deg,#0000 56deg);border-radius:50%;transition:transform .15s linear;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(0)}.location-dot{background:var(--color-primary);width:12px;height:12px;z-index:var(--z-index-float);border:2px solid #fff;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 4px #0000004d}.location-pulse{background:#22c55e4d;border-radius:50%;width:24px;height:24px;animation:2s ease-out infinite location-pulse;position:absolute;top:0;left:0}@keyframes location-pulse{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2)}}.google-btn .google-logo{flex-shrink:0;width:18px;height:18px;display:block}#photo-grid{gap:8px;margin-top:4px;display:flex}.photo-slot{border:2px dashed var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;flex-shrink:0;width:64px;height:64px;transition:border-color .2s,background .2s;position:relative;overflow:hidden}.photo-slot:hover{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.photo-slot .slot-inner{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.photo-slot .slot-plus{color:var(--color-on-surface-variant);font-size:28px;font-weight:300;line-height:1}.photo-slot .slot-preview{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo-slot .slot-preview.hidden{display:none}.video-field{flex-direction:column;gap:8px;display:flex}.video-field-label{font-family:var(--body-medium-font-family);font-weight:var(--body-medium-font-weight);font-size:var(--body-medium-font-size);line-height:var(--body-medium-line-height);color:var(--color-on-surface-variant)}.photo-field{flex-direction:column;gap:8px;display:flex}.photo-field-label{font-family:var(--body-medium-font-family);font-weight:var(--body-medium-font-weight);font-size:var(--body-medium-font-size);line-height:var(--body-medium-line-height);color:var(--color-on-surface-variant)}.video-dropzone{border:2px dashed var(--color-outline-variant);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:22px 16px;transition:border-color .2s,background .2s;display:flex}.video-dropzone:hover{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.video-dropzone-icon{background:var(--color-primary-container);width:44px;height:44px;color:var(--color-on-primary-container);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.video-dropzone-icon svg{width:22px;height:22px}.video-dropzone-title{font-family:var(--body-large-font-family);font-weight:var(--body-large-font-weight);font-size:var(--body-large-font-size);line-height:var(--body-large-line-height);color:var(--color-on-surface)}.video-dropzone-hint{font-family:var(--body-medium-font-family);font-size:var(--body-medium-font-size);line-height:var(--body-medium-line-height);color:var(--color-on-surface-variant)}.video-preview{flex-direction:column;gap:8px;display:flex}.video-preview video{border-radius:var(--radius-lg);background:#000;width:100%;height:auto}.video-remove{font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);letter-spacing:var(--label-large-letter-spacing);color:var(--color-primary);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;align-self:flex-end;margin-top:8px;padding:4px 8px;transition:background .15s}.video-remove:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.photo-thumbs{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:6px;padding-bottom:2px;display:flex}.photo-thumbs img{object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;width:52px;height:52px;transition:opacity .15s}.photo-thumbs img:hover{opacity:.8}.popup-video{object-fit:cover;border-radius:var(--radius-sm);width:217.5px;height:120px;margin:6px auto 0;display:block}.popup-actions{justify-content:center;gap:6px;margin-top:6px;display:flex}.popup-btn{font-size:var(--body-small-font-size);border:1px solid var(--color-outline);border-radius:var(--radius-sm);cursor:pointer;background:var(--color-surface);padding:3px 10px}.popup-btn.popup-btn-danger{border-color:var(--color-error);color:var(--color-error)}.popup-whatsapp{border-radius:var(--radius-full);font-family:var(--label-large-font-family);font-weight:var(--label-large-font-weight);font-size:var(--label-large-font-size);line-height:var(--label-large-line-height);letter-spacing:var(--label-large-letter-spacing);cursor:pointer;background:#25d366;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:10px 12px;text-decoration:none;transition:background .15s;display:flex;color:#fff!important}.popup-whatsapp:hover{background:#1ebe5b}.popup-whatsapp svg{fill:#fff;flex-shrink:0;width:18px;height:18px}.photo-lightbox{z-index:var(--z-index-lightbox);cursor:pointer;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-img-wrap{justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex}.lightbox-img-wrap img{object-fit:contain;border-radius:var(--radius-md);max-width:90vw;max-height:90vh}.lightbox-nav{cursor:pointer;color:#fff;opacity:0;-webkit-user-select:none;user-select:none;width:20%;z-index:var(--z-index-inset);justify-content:center;align-items:center;font-size:40px;transition:opacity .2s;display:flex;position:absolute;top:0;bottom:0}.photo-lightbox:hover .lightbox-nav{opacity:.5}.lightbox-nav:hover{opacity:1!important}.lightbox-nav.left{background:linear-gradient(90deg,#0000004d,#0000);left:0}.lightbox-nav.right{background:linear-gradient(270deg,#0000004d,#0000);right:0}.lightbox-close{color:#fff;cursor:pointer;opacity:.6;z-index:var(--z-index-float);background:0 0;border:none;font-size:36px;line-height:1;transition:opacity .2s;position:absolute;top:10px;right:20px}.lightbox-close:hover{opacity:1}.mapmode-btn,.locate-btn{background:var(--color-surface);border-radius:var(--radius-md);cursor:pointer;width:40px;height:40px;box-shadow:var(--elevation-2);color:var(--color-on-surface-variant);border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.mapmode-btn:hover,.locate-btn:hover{background:var(--color-surface-container-high);color:var(--color-on-surface)}.compass-btn{background:var(--color-surface);border-radius:var(--radius-md);cursor:grab;width:40px;height:40px;box-shadow:var(--elevation-2);color:var(--color-on-surface-variant);touch-action:none;-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.compass-btn:hover{background:var(--color-surface-container-high);color:var(--color-on-surface)}.compass-btn:active{cursor:grabbing}.compass-needle{transition:transform .1s linear;display:block}@media (min-width:769px){.leaflet-top.leaflet-right{top:auto;bottom:36px;right:4px}}@media (max-width:768px){.leaflet-top.leaflet-right{top:auto;bottom:90px;right:4px}}.leaflet-top.leaflet-right .leaflet-control+.leaflet-control{margin-top:14px}.leaflet-container{background:color-mix(in srgb, var(--color-primary) 28%, var(--color-surface));font-family:var(--body-medium-font-family);width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.map-loading{top:max(30px, env(safe-area-inset-top,30px));z-index:var(--z-index-toast);pointer-events:none;opacity:0;transition:opacity .25s .35s,transform .25s .35s;position:fixed;left:50%;transform:translate(-50%)translateY(-6px)}.map-loading.on{opacity:1;transform:translate(-50%)translateY(0)}.map-loading-pill{background:color-mix(in srgb, var(--color-surface) 90%, transparent);color:var(--color-on-surface);box-shadow:0 2px 12px color-mix(in srgb, var(--color-on-surface) 20%, transparent);border-radius:999px;align-items:center;gap:10px;padding:10px 16px;font-size:.875rem;display:flex}.map-loading-spinner{border:2.5px solid var(--color-outline);border-top-color:var(--color-primary);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite map-loading-spin}@keyframes map-loading-spin{to{transform:rotate(360deg)}}.pwa-install{bottom:max(20px, env(safe-area-inset-bottom));z-index:var(--z-index-controls);flex-direction:column;align-items:center;display:flex;position:fixed;left:50%;transform:translate(-50%)}.pwa-install-dock{background:var(--color-surface-container-high);box-shadow:0 4px 18px color-mix(in srgb, var(--color-on-surface) 18%, transparent);border-radius:999px;align-items:center;gap:4px;padding:6px;display:flex}.pwa-install-btn{background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:8px;padding:12px 18px;font-size:.875rem;font-weight:600;display:inline-flex}.pwa-install-btn:hover{background:color-mix(in srgb, var(--color-primary) 85%, black)}.pwa-install-close{width:34px;height:34px;color:var(--color-on-surface-variant);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.pwa-install-close:hover{background:color-mix(in srgb, var(--color-on-surface) 8%, transparent)}.pwa-install-sheet{border-radius:var(--radius-lg);background:var(--color-surface);width:min(320px,100vw - 48px);box-shadow:0 8px 30px color-mix(in srgb, var(--color-on-surface) 22%, transparent);margin-bottom:14px;padding:20px;position:relative}.pwa-install-sheet-close{width:30px;height:30px;color:var(--color-on-surface-variant);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;right:12px}.pwa-install-sheet-title{color:var(--color-on-surface);margin:0 0 14px;font-size:1rem;font-weight:700}.pwa-install-steps{color:var(--color-on-surface);flex-direction:column;gap:8px;margin:0 0 16px;padding-left:20px;font-size:.875rem;line-height:1.5;display:flex}.pwa-install-sheet-actions{justify-content:flex-end;display:flex}.marker-cluster span{color:#fff}.landing{color:#1a1a2e;background:#fff;flex-direction:column;min-height:100vh;font-family:Roboto,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;display:flex}.landing *,.landing :before,.landing :after{box-sizing:border-box;margin:0;padding:0}.landing a{color:inherit;text-decoration:none}.landing .container{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}.landing nav{z-index:var(--z-index-nav);-webkit-backdrop-filter:blur(12px);background:#ffffffd9;border-bottom:1px solid #0000000f;position:fixed;top:0;left:0;right:0}.landing nav .container{justify-content:space-between;align-items:center;height:64px;display:flex}.landing .logo{letter-spacing:-.5px;font-size:clamp(1.1875rem,1.6vw,1.5rem);font-weight:800}.landing .logo span{color:var(--color-primary)}.landing .nav-links{align-items:center;gap:12px;display:flex}.landing .nav-links a{color:#555;font-size:clamp(.8125rem,1.2vw,.9375rem);font-weight:500}.landing .nav-links a:hover{color:var(--color-primary)}.landing .btn{cursor:pointer;border:none;border-radius:9999px;justify-content:center;align-items:center;gap:6px;padding:10px 24px;font-family:inherit;font-size:clamp(.8125rem,1.2vw,.875rem);font-weight:600;transition:all .2s;display:inline-flex}.landing .btn-primary{background:var(--color-primary);color:#fff}.landing .btn-primary:hover{box-shadow:0 4px 14px color-mix(in srgb, var(--color-primary) 35%, transparent);background:#659d1a;transform:translateY(-1px)}.landing .btn-outline{color:var(--color-primary);border:1.5px solid var(--color-primary);background:0 0}.landing .btn-outline:hover{background:#f1f8e8}.landing .btn-lg{padding:14px 36px;font-size:clamp(.875rem,1.4vw,1rem)}.landing footer{text-align:center;border-top:1px solid #eef2f6;padding:24px 0}.landing footer p{color:#999;font-size:clamp(.75rem,1vw,.875rem)}.landing .hero{text-align:center;flex:1;align-items:center;min-height:100vh;padding-top:64px;display:flex;position:relative;overflow:hidden}.landing .hero h1{letter-spacing:-1px;margin-bottom:8px;font-size:clamp(1.625rem,3.5vw,2.5rem);font-weight:800;line-height:1.2}.landing .hero h1 span{color:var(--color-primary)}.landing .hero p{color:#555;max-width:440px;margin:0 auto 36px;font-size:clamp(1rem,2vw,1.25rem)}.landing .hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}@media (max-width:640px){.landing .nav-links a:not(.btn){display:none}}.auth-page{background:#fff;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.auth-page .landing-logo{text-align:center}.auth-card-wrap{flex-direction:column;align-items:center;width:100%;max-width:380px;margin:auto;display:flex}.auth-card{border-radius:var(--radius-2xl);background:#fff;width:100%;max-width:400px;padding:32px 28px 28px;animation:.3s cubic-bezier(.22,.61,.36,1) auth-card-in;position:relative}.auth-heading-group{flex-direction:column;align-items:center;gap:0;margin-bottom:16px;display:flex}.auth-brand{letter-spacing:-.5px;color:inherit;font-size:1.125rem;font-weight:800;line-height:1.2;text-decoration:none}.auth-brand-accent{color:var(--color-primary)}@keyframes auth-card-in{0%{opacity:0;transform:translateY(10px)scale(.99)}to{opacity:1;transform:none}}@keyframes onboarding-step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.auth-card h1{font-family:var(--headline-small-font-family);font-size:1.125rem;line-height:var(--headline-small-line-height);letter-spacing:var(--headline-small-letter-spacing);color:var(--color-on-surface);text-align:center;margin:0 0 4px}.auth-card .auth-subtitle{font-family:var(--body-medium-font-family);font-size:var(--body-medium-font-size);line-height:var(--body-medium-line-height);color:var(--color-on-surface-variant);text-align:center;margin:0 0 20px}.auth-card .auth-link-row{text-align:center;font-family:var(--body-medium-font-family);font-size:var(--body-medium-font-size);color:var(--color-on-surface-variant);margin-top:18px}.auth-card .auth-link-row a{color:var(--color-primary);font-weight:500;text-decoration:none}.auth-card .auth-link-row a:hover{text-decoration:underline}.auth-card form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:8px;display:flex}.auth-field-label{font-family:var(--body-medium-font-family);font-size:.75rem;font-weight:500;line-height:var(--body-medium-line-height);color:var(--color-on-surface-variant)}.auth-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.auth-forgot-link{font-family:var(--body-medium-font-family);font-size:.75rem;font-weight:500;line-height:var(--body-medium-line-height);color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0}.auth-forgot-link:hover{text-decoration:underline}.auth-card .float-field{position:relative}.auth-card .float-field input{box-sizing:border-box;width:100%;height:54px;font-family:var(--body-large-font-family);font-size:var(--body-large-font-size);color:var(--color-on-surface);background:var(--color-surface-container);border:none;border-bottom:1px solid var(--color-outline-variant);border-radius:var(--radius-md);outline:none;padding:0 14px;transition:border-color .15s,box-shadow .15s,background .15s}.auth-page,.auth-page h1,.auth-page .auth-field-label,.auth-page .google-btn{color:#1a1c19}.auth-page .auth-subtitle,.auth-page .auth-link-row,.auth-page .auth-divider,.auth-page .terms-label,.auth-page .password-toggle{color:#555}.auth-page .float-field input{color:#1a1c19;background:#f5f5f5}.auth-page .float-field input:focus{background:#fff}.auth-page .modal-actions{flex-direction:column;align-items:stretch}.auth-page .modal-actions button{width:100%;height:48px;font-size:.875rem}.auth-page .modal-actions button:first-child{color:#1a1c19;background:#f5f5f5}.auth-page .modal-actions button:first-child:hover{background:#efefef}.auth-page .modal-actions button:last-child{background:var(--color-primary);color:#fff}.auth-page .modal-actions button:last-child:hover{background:color-mix(in srgb, var(--color-primary) 85%, black)}
