Skip to content

Instantly share code, notes, and snippets.

(function(){
// --- Modal UI ---
function showModal(options) {
return new Promise((resolve, reject) => {
const overlay = document.createElement('div');
overlay.style.cssText = 'position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:999999;display:flex;align-items:center;justify-content:center;';
const box = document.createElement('div');
<!DOCTYPE html>
<html>
<head>
<title>Athletic.net Fetcher — Install Bookmarklet</title>
<style>
body { font-family: sans-serif; max-width: 600px; margin: 60px auto; padding: 0 20px; color: #333; }
h1 { font-size: 22px; margin-bottom: 8px; }
.subtitle { color: #777; margin-bottom: 40px; }
.drag-box { background: #f5f5f5; border: 2px dashed #ccc; border-radius: 8px; padding: 30px; text-align: center; margin-bottom: 40px; }
.drag-box p { margin: 0 0 16px 0; color: #555; font-size: 14px; }
(function(){
// --- Modal UI ---
function showModal(options) {
return new Promise((resolve, reject) => {
const overlay = document.createElement('div');
overlay.style.cssText = 'position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:999999;display:flex;align-items:center;justify-content:center;';
const box = document.createElement('div');