:root{--ip-lookup-primary:#6366f1;--ip-lookup-primary-dark:#4f46e5;--ip-lookup-primary-light:#818cf8;--ip-lookup-success:#10b981;--ip-lookup-warning:#f59e0b;--ip-lookup-danger:#ef4444;--ip-lookup-bg:#ffffff;--ip-lookup-bg-secondary:#f8fafc;--ip-lookup-bg-tertiary:#f1f5f9;--ip-lookup-text:#1e293b;--ip-lookup-text-secondary:#64748b;--ip-lookup-text-muted:#94a3b8;--ip-lookup-border:#e2e8f0;--ip-lookup-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--ip-lookup-shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--ip-lookup-radius:12px;--ip-lookup-radius-sm:8px;--ip-lookup-font:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif}.ip-lookup-pro-container[data-theme="dark"]{--ip-lookup-bg:#0f172a;--ip-lookup-bg-secondary:#1e293b;--ip-lookup-bg-tertiary:#334155;--ip-lookup-text:#f1f5f9;--ip-lookup-text-secondary:#cbd5e1;--ip-lookup-text-muted:#64748b;--ip-lookup-border:#334155}.ip-lookup-pro-container{font-family:var(--ip-lookup-font);max-width:1000px;margin:0 auto;padding:24px;background:var(--ip-lookup-bg);border-radius:var(--ip-lookup-radius);box-shadow:var(--ip-lookup-shadow-lg)}.ip-lookup-pro-form-wrapper{margin-bottom:24px}.ip-lookup-pro-form{display:flex;flex-direction:column;gap:12px}.ip-lookup-pro-input-group{display:flex;align-items:center;background:var(--ip-lookup-bg-secondary);border:2px solid var(--ip-lookup-border);border-radius:var(--ip-lookup-radius);padding:4px;transition:border-color 0.2s ease,box-shadow 0.2s ease}.ip-lookup-pro-input-group:focus-within{border-color:var(--ip-lookup-primary);box-shadow:0 0 0 3px rgb(99 102 241 / .1)}.ip-lookup-pro-icon{display:flex;align-items:center;justify-content:center;padding:0 12px;color:var(--ip-lookup-text-muted)}.ip-lookup-pro-input{flex:1;border:none;background:#fff0;padding:14px 8px;font-size:16px;color:var(--ip-lookup-text);outline:none;font-family:'SF Mono','Fira Code','Monaco',monospace}.ip-lookup-pro-input::placeholder{color:var(--ip-lookup-text-muted);font-family:var(--ip-lookup-font)}.ip-lookup-pro-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 28px;background:linear-gradient(135deg,var(--ip-lookup-primary),var(--ip-lookup-primary-dark));color:#fff;border:none;border-radius:var(--ip-lookup-radius-sm);font-size:15px;font-weight:600;cursor:pointer;transition:transform 0.15s ease,box-shadow 0.15s ease;white-space:nowrap}.ip-lookup-pro-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgb(99 102 241 / .4)}.ip-lookup-pro-button:active{transform:translateY(0)}.ip-lookup-pro-button .spinner{animation:ip-spin 1s linear infinite}@keyframes ip-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.ip-lookup-pro-quick-actions{display:flex;gap:8px}.ip-lookup-pro-my-ip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--ip-lookup-bg-tertiary);border:1px solid var(--ip-lookup-border);border-radius:20px;font-size:13px;color:var(--ip-lookup-text-secondary);cursor:pointer;transition:all 0.2s ease}.ip-lookup-pro-my-ip:hover{background:var(--ip-lookup-primary);border-color:var(--ip-lookup-primary);color:#fff}.ip-lookup-pro-results-wrapper{background:var(--ip-lookup-bg-secondary);border-radius:var(--ip-lookup-radius);overflow:hidden}.ip-lookup-pro-content{display:grid;grid-template-columns:1fr;gap:0}@media (min-width:768px){.ip-lookup-pro-content{grid-template-columns:350px 1fr}}.ip-lookup-pro-map-container{position:relative;height:280px;background:var(--ip-lookup-bg-tertiary)}@media (min-width:768px){.ip-lookup-pro-map-container{height:100%;min-height:400px}}.ip-lookup-pro-map{width:100%;height:100%;z-index:1}.ip-lookup-pro-map-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgb(0 0 0 / .5);display:flex;align-items:center;justify-content:center;z-index:2}.map-loader{width:40px;height:40px;border:3px solid rgb(255 255 255 / .3);border-top-color:#fff;border-radius:50%;animation:ip-spin 0.8s linear infinite}.ip-lookup-pro-details{padding:24px}.ip-lookup-pro-header{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--ip-lookup-border)}.ip-lookup-pro-ip-display{display:flex;flex-direction:column;gap:4px}.ip-label{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--ip-lookup-text-muted)}.ip-value{font-size:24px;font-weight:700;color:var(--ip-lookup-text);font-family:'SF Mono','Fira Code','Monaco',monospace}.ip-lookup-pro-location-display{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--ip-lookup-text-secondary)}.location-flag{font-size:20px}.ip-lookup-pro-data-grid{display:flex;flex-direction:column;gap:20px}.data-section{background:var(--ip-lookup-bg);border-radius:var(--ip-lookup-radius-sm);padding:16px}.section-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ip-lookup-text-muted);margin:0 0 12px 0}.section-title svg{opacity:.7}.data-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.data-item{display:flex;flex-direction:column;gap:4px}.data-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--ip-lookup-text-muted)}.data-value{font-size:14px;font-weight:500;color:var(--ip-lookup-text);word-break:break-word}.data-value a{color:var(--ip-lookup-primary);text-decoration:none;transition:color 0.2s ease}.data-value a:hover{color:var(--ip-lookup-primary-dark);text-decoration:underline}.privacy-items .data-items{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.privacy-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.privacy-badge.not-detected{background:rgb(16 185 129 / .1);color:var(--ip-lookup-success)}.privacy-badge.detected{background:rgb(245 158 11 / .1);color:var(--ip-lookup-warning)}.ip-lookup-pro-recent-logs{margin-top:24px;background:var(--ip-lookup-bg);border-radius:var(--ip-lookup-radius);padding:20px;border:1px solid var(--ip-lookup-border)}.recent-logs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.recent-logs-header h4{display:flex;align-items:center;gap:8px;margin:0;font-size:16px;color:var(--ip-lookup-text)}.ip-lookup-logs-table-wrapper{overflow-x:auto;border-radius:var(--ip-lookup-radius-sm);border:1px solid var(--ip-lookup-border)}.ip-lookup-logs-table{width:100%;border-collapse:collapse;font-size:14px}.ip-lookup-logs-table th,.ip-lookup-logs-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--ip-lookup-border)}.ip-lookup-logs-table th{background:var(--ip-lookup-bg-secondary);font-weight:600;font-size:12px;text-transform:uppercase;color:var(--ip-lookup-text-muted);letter-spacing:.05em;white-space:nowrap}.ip-lookup-logs-table tr:last-child td{border-bottom:none}.ip-lookup-logs-table tbody tr{transition:background-color 0.15s ease}.ip-lookup-logs-table tbody tr:hover{background-color:var(--ip-lookup-bg-secondary)}.log-ip code{font-family:'SF Mono','Fira Code','Monaco',monospace;font-size:13px;color:var(--ip-lookup-primary);background:rgb(99 102 241 / .1);padding:2px 6px;border-radius:4px}.log-ip a{text-decoration:none;cursor:pointer}.log-count{text-align:center}.lookup-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--ip-lookup-bg-tertiary);font-size:11px;font-weight:600;color:var(--ip-lookup-text-secondary)}.log-time{color:var(--ip-lookup-text-muted);font-size:13px;white-space:nowrap}.ip-lookup-no-logs{text-align:center;padding:24px;color:var(--ip-lookup-text-muted);font-style:italic;background:var(--ip-lookup-bg-secondary);border-radius:var(--ip-lookup-radius-sm)}.ip-lookup-pro-status{margin-top:16px;padding:12px 16px;border-radius:var(--ip-lookup-radius-sm);font-size:14px;text-align:center}.ip-lookup-pro-status.loading{background:rgb(99 102 241 / .1);color:var(--ip-lookup-primary)}.ip-lookup-pro-status.error{background:rgb(239 68 68 / .1);color:var(--ip-lookup-danger)}.ip-lookup-pro-status.success{background:rgb(16 185 129 / .1);color:var(--ip-lookup-success)}.ip-lookup-pro-error{padding:24px;text-align:center;color:var(--ip-lookup-text-muted)}.ip-lookup-pro-container .leaflet-container{font-family:var(--ip-lookup-font)}.ip-lookup-pro-container .leaflet-popup-content-wrapper{border-radius:var(--ip-lookup-radius-sm);box-shadow:var(--ip-lookup-shadow)}.ip-lookup-pro-container .leaflet-popup-content{margin:12px 16px;font-size:14px;line-height:1.5}.ip-lookup-pro-container .leaflet-popup-content b{font-family:'SF Mono','Fira Code','Monaco',monospace;font-size:12px;color:var(--ip-lookup-text-secondary)}.ip-lookup-custom-marker{background:var(--ip-lookup-primary);border-radius:50%;border:3px solid #fff;box-shadow:0 2px 8px rgb(0 0 0 / .3)}@keyframes ip-pulse{0%,100%{opacity:1}50%{opacity:.5}}.ip-loading{animation:ip-pulse 1.5s ease-in-out infinite}@media (max-width:480px){.ip-lookup-pro-container{padding:16px;border-radius:var(--ip-lookup-radius-sm)}.ip-lookup-pro-input-group{flex-wrap:wrap}.ip-lookup-pro-button{width:100%;justify-content:center;margin-top:8px}.ip-value{font-size:18px}.data-items{grid-template-columns:1fr 1fr}.ip-lookup-logs-table th:nth-child(3),.ip-lookup-logs-table td:nth-child(3),.ip-lookup-logs-table th:nth-child(4),.ip-lookup-logs-table td:nth-child(4){display:none}}@media print{.ip-lookup-pro-form-wrapper,.ip-lookup-pro-map-container,.ip-lookup-pro-recent-logs{display:none}.ip-lookup-pro-container{box-shadow:none;border:1px solid #ddd}}