diff --git a/_headers b/_headers deleted file mode 100644 index b75a3cb..0000000 --- a/_headers +++ /dev/null @@ -1,6 +0,0 @@ -/style.css - Cache-Control: public, max-age=0, must-revalidate -/index.html - Cache-Control: public, max-age=0, must-revalidate -/ - Cache-Control: public, max-age=0, must-revalidate diff --git a/index.html b/index.html index e29c64a..ab9ae83 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,404 @@ - + :nth-child(even) .label { - transform: rotate(6deg); -} - -.links > :hover .label, -.links > :focus-visible .label { - transform: rotate(0deg) scale(1.1); -} - -h2 { - font-size: 1.5rem; - margin: 2rem 0 0.75rem; -} - -.chalky-link img { - height: 4.5rem; - width: auto; -} - -body a[title="bluesky"]:hover { - color: #0085ff; -} - -.leaflet-link svg { - width: auto; -} - -body a.leaflet-link:hover { - color: #639431; -} - -@media (prefers-color-scheme: dark) { - body { - background-color: var(--background-dark); - color: var(--text-primary-dark); - font-family: var(--font-stack); - } - - body a:hover { - color: var(--accent-dark); - } - - body .secondary-text { - color: var(--text-secondary-dark); - } - - body .border { - border-color: var(--border-dark); - } - - body .shadow { - box-shadow: 0 2px 4px var(--shadow-dark); - } - - body a[title="bluesky"]:hover { - color: #0085ff; - } - - body a.leaflet-link:hover { - color: #639431; - } - - .leaflet-inner { - fill: var(--background-dark); - } -} - -.bluesky-flutter { - display: flex; - gap: 0.5em; - align-items: center; -} - -.bluesky-flutter svg { - width: 2em; - height: 2em; - transition: 200ms; -} - -.bluesky-flutter .left { - transform-origin: center; -} -.bluesky-flutter .right { - transform-origin: center; - transform: scale(-1, 1); -} -.bluesky-flutter:hover .left, -.bluesky-flutter:focus .left { - animation: flutter 430ms ease-in-out; - --flip: 1; -} -.bluesky-flutter:hover .right, -.bluesky-flutter:focus .right { - animation: flutter 500ms ease-in-out; - --flip: -1; -} -.bluesky-flutter:hover svg, -.bluesky-flutter:focus svg { - transform: rotate(-5deg); - transition: 500ms; -} - -@media (prefers-reduced-motion) { - .bluesky-flutter:hover .left, - .bluesky-flutter:focus .left, - .bluesky-flutter:hover .right, - .bluesky-flutter:focus .right { - animation: none; - } -} - -@keyframes flutter { - 10% { - transform: scale(calc(var(--flip) * 1), 0.9); - } - 20% { - transform: scale(calc(var(--flip) * 0.5), 1); - } - 40% { - transform: scale(calc(var(--flip) * 0.9), 0.95); - } - 60% { - transform: scale(calc(var(--flip) * 0.3), 1); - } - 80% { - transform: scale(calc(var(--flip) * 0.9), 0.95); - } - 100% { - transform: scale(calc(var(--flip) * 1), 1); - } -} - -/* Email dialog */ -dialog#email-dialog { - position: fixed; - inset: 0; - margin: auto; - padding: 2.25rem 2.5rem 1.75rem; - border: 3px solid var(--text-primary-light); - border-radius: 1.25rem; - background-color: var(--background-light); - color: var(--text-primary-light); - font-family: var(--font-stack); - text-align: center; - max-width: min(90vw, 26rem); - box-shadow: 0 8px 24px var(--shadow-light); - transform: rotate(-1.5deg); -} - -dialog#email-dialog:focus { - outline: none; -} - -dialog#email-dialog::backdrop { - background: rgba(0, 0, 0, 0.45); - backdrop-filter: blur(2px); -} - -.dialog-close { - position: absolute; - top: 0.6rem; - right: 0.6rem; - width: 1.75rem; - height: 1.75rem; - display: flex; - align-items: center; - justify-content: center; -} - -.dialog-close svg { - width: 1.1rem; - height: 1.1rem; -} - -.email-row { - display: flex; - flex-wrap: wrap; - justify-content: center; - align-items: center; - gap: 0.75rem; -} - -#email-address { - font-family: var(--font-stack); - font-size: 1.2rem; - padding: 0.4rem 0.8rem; - border: 2px dashed currentColor; - border-radius: 0.6rem; - user-select: all; -} - -.copy-button { - display: inline-flex; - align-items: center; - gap: 0.35rem; - padding: 0.4rem 0.8rem; - border: 2px solid currentColor; - border-radius: 0.6rem; - font-size: 1rem; - transition: transform 150ms; -} - -.copy-button:hover { - transform: rotate(2deg) scale(1.05); -} - -.copy-button svg { - width: 1.1rem; - height: 1.1rem; -} - -.copy-button .check-icon { - display: none; -} - -.copy-button.copied { - color: #2e9e5b; -} - -.copy-button.copied .copy-icon { - display: none; -} - -.copy-button.copied .check-icon { - display: block; -} - -@media (prefers-color-scheme: dark) { - dialog#email-dialog { - border-color: var(--text-primary-dark); - background-color: var(--background-dark); - color: var(--text-primary-dark); - box-shadow: 0 8px 24px var(--shadow-dark); - } - - dialog#email-dialog::backdrop { - background: rgba(0, 0, 0, 0.6); - } - - .copy-button.copied { - color: #5ed48a; - } -}