diff --git a/src/app/globals.css b/src/app/globals.css index fb4cb3d..0f123fc 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -39,9 +39,133 @@ /* Leaflet dark theme overrides */ .leaflet-container { - background: #0d0a0f !important; + background: #0a1628 !important; font-family: inherit; } + +.sniffies-map .leaflet-tile-pane { + filter: saturate(0.85) brightness(0.95); +} + +/* Sniffies-style photo markers */ +.sniffies-marker-wrap, +.sniffies-you-wrap, +.sniffies-spot-wrap { + background: transparent !important; + border: none !important; +} + +.sniffies-marker { + position: relative; + width: 52px; + height: 58px; + display: flex; + flex-direction: column; + align-items: center; +} + +.sniffies-avatar-ring { + width: 44px; + height: 44px; + border-radius: 50%; + border: 2px solid #3b82f6; + padding: 2px; + background: #0a1628; + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.6); +} + +.sniffies-avatar-ring.sniffies-online { + border-color: #3b82f6; + box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.35); +} + +.sniffies-avatar { + width: 100%; + height: 100%; + border-radius: 50%; + background-size: cover; + background-position: center; +} + +.sniffies-dist-badge { + margin-top: 2px; + min-width: 18px; + height: 16px; + padding: 0 4px; + border-radius: 8px; + background: #f97316; + color: white; + font-size: 10px; + font-weight: 700; + line-height: 16px; + text-align: center; + box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5); +} + +.sniffies-you { + display: flex; + flex-direction: column; + align-items: center; + gap: 2px; +} + +.sniffies-you-dot { + width: 40px; + height: 40px; + border-radius: 50%; + background: #ef4444; + border: 3px solid white; + box-shadow: 0 2px 12px rgba(239, 68, 68, 0.6); + display: flex; + align-items: center; + justify-content: center; +} + +.sniffies-you-dot::after { + content: ""; + width: 14px; + height: 14px; + background: white; + border-radius: 50%; + mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E") center/contain no-repeat; +} + +.sniffies-you-label { + font-size: 11px; + font-weight: 700; + color: #3b82f6; + text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8); +} + +.sniffies-spot { + position: relative; + width: 36px; + height: 36px; + border-radius: 50%; + background: rgba(10, 22, 40, 0.9); + border: 2px solid #3b82f6; + display: flex; + align-items: center; + justify-content: center; + font-size: 16px; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5); +} + +.sniffies-spot-count { + position: absolute; + top: -4px; + right: -4px; + min-width: 16px; + height: 16px; + border-radius: 8px; + background: #3b82f6; + color: white; + font-size: 9px; + font-weight: 700; + line-height: 16px; + text-align: center; + padding: 0 3px; +} .leaflet-popup-content-wrapper { background: hsl(280 25% 10%); color: hsl(0 0% 98%); diff --git a/src/app/page.tsx b/src/app/page.tsx index d9d413c..d81aae1 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -8,7 +8,7 @@ export default function HomePage() { const vanillaMode = useVanillaMode(); return ( -
{US_STATES.find((s) => s.code === state)?.name} requires ID verification - to view nude photos. You can verify after entering. + for nude photos — not required to browse as a guest.
)}+ No account needed. Verify your age + with date of birth only — browse the map, spots, and profiles free. Explicit + photos and chat require a free signup. Government ID is only needed for nude + content in certain states. +
+