body,html{height:100%;min-height:100%;overflow:hidden}body{margin:0;font-family:Arial,sans-serif;background:#f2f2f2;min-height:100dvh;display:flex;flex-direction:column}header{background:#1e88e5;color:#fff;padding:14px 20px;font-size:22px;font-weight:700}#controls{position:relative;display:flex;gap:12px;padding:12px;padding-right:260px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.1);align-items:center;flex-wrap:wrap}#map{height:100%;min-height:320px;width:100%}.btn{background:#1e88e5;color:#fff;border:none;border-radius:4px;padding:8px 14px;cursor:pointer;font-weight:700}.btn:hover{background:#1565c0}gmp-place-autocomplete{width:300px}#status{margin-left:20px;font-size:14px;color:#444}#w3w-action{display:none;position:absolute;top:calc(100% + 8px);left:12px;z-index:3000;gap:8px;align-items:center;margin-top:0;padding:10px 12px;border:1px solid rgba(15,23,42,.1);border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(15,23,42,.16);line-height:1.4;font-size:14px}body.filters-open #w3w-action,body.has-selected-place #w3w-action{display:flex}body.has-selected-place:not(.filters-open) #w3w-action>input,body.has-selected-place:not(.filters-open) #w3w-action>select{display:none}body:not(.has-selected-place) #w3w-wrapper{display:none}body.filters-open #w3w-action{flex-wrap:wrap}.hashtag-filter{width:100px;padding:4px 8px;border:1px solid #ccc;border-radius:6px;font-size:13px}#w3w-wrapper{margin-top:0;display:flex;gap:8px;align-items:center;font-weight:500}#w3w-wrapper .filter-toggle,.w3w-action-button{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;border:1px solid rgba(15,23,42,.14);border-radius:10px;padding:0 10px;background:#fff;color:#1f3a4a;box-shadow:none;cursor:pointer;font-size:18px;font-weight:700;line-height:1}#w3w-wrapper .filter-toggle:hover,#w3w-wrapper .filter-toggle[aria-expanded=true],.w3w-action-button.copied,.w3w-action-button:hover,.w3w-action-button[aria-pressed=true],body.highlights-active #highlight-toggle{background:#e3f2fd;color:#0d47a1}#copy-w3w{background:#fff7ed;border-color:#fed7aa;color:#9a3412}#copy-w3w.copied,#copy-w3w:hover{background:#ffedd5;border-color:#fb923c;color:#7c2d12}.open-goc-nho{background:#fff7ed;border-color:#fed7aa;color:#8a4b12}.open-goc-nho:hover{background:#ffedd5;color:#7c2d12}#highlight-toggle{background:#fffbeb;border-color:#fde68a;color:#b45309}#highlight-toggle:hover,body.highlights-active #highlight-toggle{background:#fef3c7;border-color:#f59e0b;color:#92400e}#w3w-wrapper .filter-toggle{color:#5f6368}#w3w-wrapper .filter-toggle{font-size:16px}.search-container{position:relative;display:inline-block;min-width:0}.search-input{padding:10px 12px;width:260px;border-radius:6px;border:1px solid #ccc;font-size:15px}.suggestions-box{position:absolute;top:40px;width:260px;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 3px 8px rgba(0,0,0,.15);display:none;z-index:1000}.suggestion-item{padding:8px 12px;cursor:pointer}.suggestion-item:hover{background:#f0f0f0}.w1{color:#d93025}.w2{color:#1a73e8}.w3{color:#fbbc04}#status{font-size:14px;margin-bottom:4px}#address-line{font-size:12px;color:#888}.place-address{font-size:11px;color:#777}.three-words{font-size:14px;font-weight:600}.aura-overlay{position:absolute;inset:0;pointer-events:none;background:rgba(0,0,0,.2);transition:background .4s ease}.day-night-icon{position:absolute;top:12px;right:12px;font-size:28px;pointer-events:none}.mobile-only{display:none}.filter-toggle{min-height:38px;border:1px solid rgba(15,23,42,.14);border-radius:9px;padding:0 13px;background:#fff;color:#263238;cursor:pointer;font-weight:700}.filter-toggle:hover,.filter-toggle[aria-expanded=true]{background:#e3f2fd;color:#0d47a1}.app-nav{display:inline-grid;grid-template-columns:repeat(4,minmax(64px,auto));gap:4px;margin-left:auto;padding:4px;border:1px solid rgba(15,23,42,.1);border-radius:12px;background:#f5f8fb}.app-nav button{min-height:34px;border:none;border-radius:8px;padding:0 12px;background:0 0;color:#455a64;cursor:pointer;font-size:13px;font-weight:700}.app-nav button:hover,.app-nav button[aria-pressed=true]{background:#e3f2fd;color:#0d47a1}@media (max-width:767px),(max-height:540px) and (max-width:1024px){body,html{width:100%;height:100%;overflow:hidden;background:#f7f9fb}body{display:block;min-height:100dvh}header{display:none}.mobile-only{display:initial}#controls{position:fixed;top:max(8px,env(safe-area-inset-top));left:10px;right:132px;z-index:4000;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;padding:0;background:0 0;box-shadow:none}body.mobile-view-search #controls{right:10px;background:rgba(255,255,255,.96);border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:8px;gap:10px;box-shadow:0 12px 32px rgba(15,23,42,.22);backdrop-filter:blur(8px)}body.mobile-view-panel #controls{left:0;right:0;pointer-events:none}body.mobile-view-user #controls{left:0;right:0;pointer-events:none}body.mobile-view-panel #w3w-action,body.mobile-view-panel .filter-toggle,body.mobile-view-panel .search-container,body.mobile-view-user #w3w-action,body.mobile-view-user .filter-toggle,body.mobile-view-user .search-container{display:none}body.mobile-view-panel .app-nav,body.mobile-view-user .app-nav{pointer-events:auto}.search-container{width:100%}.search-input{box-sizing:border-box;width:100%;min-height:42px;border-radius:12px;border-color:rgba(15,23,42,.16);box-shadow:0 8px 20px rgba(15,23,42,.16);font-size:15px}body.mobile-view-search .search-input{box-shadow:none}.suggestions-box{position:fixed;top:calc(max(8px,env(safe-area-inset-top)) + 56px);left:10px;right:10px;width:auto;max-height:min(45dvh,360px);overflow:auto;border-radius:12px;z-index:4200}.suggestion-item{padding:12px 14px;font-size:15px}.filter-toggle{min-height:38px;border:1px solid rgba(15,23,42,.16);border-radius:12px;padding:0 12px;background:#fff;color:#263238;font-weight:700;box-shadow:0 8px 20px rgba(15,23,42,.16)}body.mobile-view-search .filter-toggle{box-shadow:none}#w3w-action{display:none;position:static;top:auto;left:auto;z-index:auto;box-shadow:none;border:none;background:0 0;padding:0;grid-column:1/-1;padding-top:2px}body.filters-open #w3w-action,body.mobile-view-search.has-selected-place #w3w-action{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body.filters-open #w3w-wrapper,body.filters-open .hashtag-filter,body.mobile-view-search #w3w-wrapper,body.mobile-view-search .hashtag-filter{grid-column:1/-1}body.mobile-view-map.has-selected-place:not(.filters-open) #w3w-action{position:fixed;left:10px;right:10px;bottom:calc(62px + env(safe-area-inset-bottom));z-index:3600;display:block;padding:6px 8px;border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(15,23,42,.22);backdrop-filter:blur(8px)}body.mobile-view-map.has-selected-place:not(.filters-open) #w3w-action>input,body.mobile-view-map.has-selected-place:not(.filters-open) #w3w-action>select{display:none}body.mobile-view-map.has-selected-place:not(.filters-open) #w3w-wrapper{display:flex;justify-content:space-between;gap:8px}#w3w-wrapper{margin-top:0;flex-wrap:wrap}#w3w-wrapper .filter-toggle,.w3w-action-button{min-width:34px;min-height:34px;border-radius:10px;padding:0 8px;font-size:17px;box-shadow:none}#radius-select,#wTime-select,.hashtag-filter{min-height:38px;border-radius:10px;font-size:14px}.hashtag-filter{box-sizing:border-box;width:100%}#status{position:fixed;left:10px;right:10px;bottom:calc(68px + env(safe-area-inset-bottom));z-index:3500;max-height:48px;overflow:hidden;margin:0;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.92);color:#263238;box-shadow:0 10px 24px rgba(15,23,42,.18);font-size:12px;pointer-events:none}#status:empty{display:none}.app-nav{position:fixed;left:0;right:0;bottom:0;z-index:5000;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:6px 10px calc(6px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid rgba(15,23,42,.12);box-shadow:0 -10px 28px rgba(15,23,42,.18);backdrop-filter:blur(10px)}.app-nav button{min-height:36px;border:none;border-radius:10px;background:0 0;color:#455a64;font-size:13px;font-weight:700}.app-nav button[aria-pressed=true]{background:#e3f2fd;color:#0d47a1}body.mobile-view-search #controls:focus-within .app-nav{display:none}.leaflet-top.leaflet-left{top:calc(max(8px,env(safe-area-inset-top)) + 52px)}body.filters-open .leaflet-top.leaflet-left,body.mobile-view-search .leaflet-top.leaflet-left{top:calc(max(8px,env(safe-area-inset-top)) + 104px)}}