.tm-top{padding-bottom:40px}.tm-stats{color:var(--muted-foreground);font-size:.95rem}.tm-stats strong{color:var(--primary);font-size:1.15rem}.tm-body{padding:40px 0 90px}.tm-layout{grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);align-items:start;gap:24px;display:grid}.tm-map-card{background:var(--card);border:1px solid var(--border);border-top:4px solid var(--primary);border-radius:8px;position:sticky;top:96px;overflow:hidden}.tm-map{background:var(--muted);width:100%;height:560px}.tm-map-fallback{color:var(--muted-foreground);padding:40px}.tm-list ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.tm-filter{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.tm-filter button{border:1px solid var(--border);background:var(--card);cursor:pointer;color:var(--foreground);border-radius:50px;padding:7px 14px;font-size:.8rem;font-weight:700}.tm-filter button.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.tm-item{background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.tm-item-main{text-align:left;cursor:pointer;width:100%;color:var(--foreground);background:0 0;border:0;flex-direction:column;gap:4px;padding:16px 18px 8px;font-size:.88rem;display:flex}.tm-item-main:hover strong{color:var(--primary)}.tm-item-main:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.tm-item-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tm-item-head strong{font-size:1.02rem}.tm-verified{color:var(--primary);background:var(--muted);border-radius:50px;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.tm-addr{color:var(--muted-foreground);align-items:center;gap:5px;display:inline-flex}.tm-links{gap:16px;padding:0 18px 14px;display:flex}.tm-links a{color:var(--primary);align-items:center;gap:4px;font-size:.8rem;font-weight:800;display:inline-flex}.tm-links a:hover{text-decoration:underline}.tm-note{color:var(--muted-foreground);margin-top:16px;font-size:.8rem}.tm-pin-wrap{background:0 0;border:0}.tm-pin{background:var(--primary);border:3px solid var(--card);width:34px;height:34px;color:var(--primary-foreground);font:800 13px var(--font-sans);border-radius:50% 50% 50% 0;place-items:center;display:grid;transform:rotate(-45deg);box-shadow:0 3px 8px #00000040}.tm-pin b{font-weight:800;transform:rotate(45deg)}.tm-pin b:empty{background:var(--coral);border-radius:50%;width:10px;height:10px}.tm-pop{font-family:var(--font-sans)}.tm-pop-where{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:.78rem;font-weight:800}.tm-pop-item{border-top:1px solid var(--border);flex-direction:column;gap:2px;padding:6px 0;font-size:.8rem;display:flex}.tm-pop-item:first-of-type{border-top:0}.tm-pop-item strong{font-size:.92rem}.tm-pop-item a{color:var(--primary);font-weight:800}.leaflet-container a.leaflet-popup-close-button{color:var(--muted-foreground)}.leaflet-popup-content-wrapper{border-radius:8px}@media (width<=860px){.tm-layout{grid-template-columns:minmax(0,1fr)}.tm-map-card{position:static}.tm-map{height:380px}}.tm-tiles{filter:grayscale()sepia(.12)hue-rotate(230deg)saturate(1.4)brightness(1.04)contrast(.92)}.tm-hero{justify-content:space-between;align-items:center;gap:40px;display:flex}.tm-hero-badge{flex-shrink:0;width:220px;height:220px}.tm-badge-panel{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--coral);border-radius:8px;align-items:center;gap:32px;margin-top:40px;padding:28px 32px;display:flex}.tm-badge-panel img{flex-shrink:0;width:150px;height:150px}.tm-badge-panel h2{margin-bottom:10px;font-size:1.9rem}.tm-badge-panel p{color:var(--muted-foreground);max-width:680px;font-size:.92rem}.tm-downloads{flex-wrap:wrap;gap:10px 22px;margin:0;display:flex}.tm-downloads a{color:var(--primary);font-size:.86rem;font-weight:800}.tm-downloads a:hover{text-decoration:underline}@media (width<=860px){.tm-hero-badge{width:130px;height:130px}.tm-badge-panel{flex-direction:column;align-items:flex-start;padding:22px}.tm-badge-panel img{width:110px;height:110px}}@media (width<=520px){.tm-hero{flex-direction:column-reverse;align-items:flex-start;gap:18px}}.tm-year{color:var(--muted-foreground);border:1px solid var(--border);border-radius:50px;padding:2px 8px;font-size:.7rem;font-weight:700}.tm-cohorts{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 16px;padding:0;display:grid}.tm-cohorts legend{margin-bottom:10px;padding:0;font-size:.9rem;font-weight:800}.tm-cohorts label{border:1px solid var(--border);cursor:pointer;background:var(--background);border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.tm-cohorts label.active{border-color:var(--primary);background:var(--muted);box-shadow:inset 0 0 0 1px var(--primary)}.tm-cohorts label.pending{cursor:not-allowed;opacity:.6}.tm-cohorts input{accent-color:var(--primary);margin-top:3px}.tm-cohorts strong{font-size:.9rem;display:block}.tm-cohorts small{color:var(--muted-foreground);font-size:.78rem;display:block}.tm-downloads span{color:var(--foreground);font-size:.86rem;font-weight:800}.tm-downloads-hint{margin:0;font-size:.86rem}.tm-badge-dim{opacity:.35;filter:grayscale(.4)}@media (width<=620px){.tm-cohorts{grid-template-columns:minmax(0,1fr)}}.tm-downloads button{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.86rem;font-weight:800}.tm-downloads button:hover{text-decoration:underline}.tm-downloads button:disabled{opacity:.5;cursor:wait}.tm-code{align-items:flex-end;gap:10px;max-width:560px;margin:0;display:flex}.tm-code .field{flex:1}.tm-code-btn{background:var(--primary);min-height:45px;color:var(--primary-foreground);font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:6px;padding:0 18px;font-size:.88rem;font-weight:800}.tm-code-btn:disabled{opacity:.55;cursor:not-allowed}.tm-badge-error{color:oklch(46% .19 25);margin:10px 0 0;font-size:.86rem;font-weight:600}.tm-code-help{margin:10px 0 0;font-size:.8rem}.tm-code-help a{color:var(--primary);font-weight:700}@media (width<=620px){.tm-code{flex-direction:column;align-items:stretch}}
