:root{--color-primary: #5B9FE8;--color-primary-dark: #4A8DD6;--color-primary-light: #7BB5F0;--color-splash-bg: #5B9FE8;--color-bg: #FFFFFF;--color-bg-secondary: #F8F9FA;--color-bg-overlay: rgba(0, 0, 0, .45);--color-text-primary: #1A1A1A;--color-text-secondary: #6B7280;--color-text-tertiary: #9CA3AF;--color-text-white: #FFFFFF;--color-tag-cafe: #5B9FE8;--color-tag-restaurant: #F97316;--color-tag-exclusive: #8B5CF6;--color-tag-large-dog: #3B82F6;--color-tag-medium-dog: #EC4899;--color-tag-indoor: #8B5CF6;--color-filter-active: #5B9FE8;--color-filter-active-text: #FFFFFF;--color-filter-inactive: #F3F4F6;--color-filter-inactive-text: #6B7280;--color-border: #E5E7EB;--color-shadow: rgba(0, 0, 0, .08);--color-marker-cafe: #5B9FE8;--color-marker-restaurant: #F97316;--color-marker-exclusive: #8B5CF6;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 24px;--space-3xl: 32px;--font-family: "SUIT Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px)}*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;height:100%;width:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{font-family:var(--font-family);border:none;outline:none;cursor:pointer;background:none;-webkit-tap-highlight-color:transparent}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.1)}70%{transform:scale(.95)}to{transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}
