.result-card { background-color: #f8f9fc; border-radius: 12px; padding: 1.2rem; margin-top: 1rem; border-left: 5px solid var(--primary-color, #0d6efd); box-shadow: 0 2px 6px rgba(0,0,0,0.05); }
        .place-item { background: white; border-radius: 8px; padding: 1rem; margin-bottom: 1rem; border: 1px solid #e9ecef; transition: 0.1s; }
        .place-item:hover { background: #fef9e6; }
        .prop-label { font-weight: 600; color: #2c3e66; min-width: 120px; display: inline-block; }
        .zip-highlight { font-family: 'Courier New', monospace; background: #e9ecef; padding: 0.2rem 0.5rem; border-radius: 24px; font-weight: 600; }
        .loading-spinner { display: inline-block; width: 1.2rem; height: 1.2rem; border: 2px solid #e9ecef; border-top: 2px solid #0d6efd; border-radius: 50%; animation: spin 0.8s linear infinite; }
        @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
        .map-link { word-break: break-all; font-size: 0.9rem; }
        .country-badge { background-color: #e2eafc; padding: 4px 10px; border-radius: 30px; font-size: 0.8rem; font-weight: 500; }
        .example-group { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
        .result-table { width: 100%; border-collapse: separate; border-spacing: 0; }
        .result-table td { padding: 8px 6px; border-bottom: 1px solid #dee2e6; }
        .result-table tr:last-child td { border-bottom: none; }
        .data-badge { font-size: 0.75rem; background: #e7f1fa; display: inline-block; padding: 3px 8px; border-radius: 20px; margin-top: 8px; }