/* ============ The Voyage: hunt.css ============
   Presentation for /hunt.js: the satchel button, its panel of torn map pieces,
   the chest and claim form, the sinking bottle of the chase, and the still route
   for reduced motion. Ships on every page next to the endcap (see chrome.mjs),
   including the standalone pages, so it only relies on its own tokens and the
   site fonts by name (with system fallbacks). Only transform and opacity move. */

:root {
  --hunt-paper: #FAF9F6; --hunt-ink: #0B0B0C; --hunt-muted: #6B6862; --hunt-faint: #A8A49C;
  --hunt-line: rgba(11, 11, 12, 0.10);
  --hunt-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --hunt-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --hunt-display: "Cabinet Grotesk", system-ui, sans-serif;
  --hunt-sans: "Switzer", system-ui, sans-serif;
  --hunt-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}

/* ---------- the satchel (bottom-left, every page, only once a piece is held) ---------- */
.hunt-satchel {
  position: fixed; left: 1.1rem; bottom: calc(1.1rem + env(safe-area-inset-bottom, 0px)); z-index: 140;
  width: 48px; height: 48px; min-width: 44px; min-height: 44px;
  display: none; align-items: center; justify-content: center; padding: 0; margin: 0; border: 0;
  border-radius: 9999px; color: var(--hunt-ink); cursor: pointer; -webkit-tap-highlight-color: transparent;
  background: rgba(250, 249, 246, 0.62);
  -webkit-backdrop-filter: blur(12px) saturate(1.5); backdrop-filter: blur(12px) saturate(1.5);
  /* the site's glass rim: paired inset highlights, a soft inner depth, then a floating shadow */
  box-shadow:
    inset 0 1.4px 0.5px -0.5px rgba(255, 255, 255, 1),
    inset 1px 0 0.5px -0.5px rgba(255, 255, 255, 0.6),
    inset -1px 0 0.5px -0.5px rgba(255, 255, 255, 0.6),
    inset 0 -1px 0.5px -0.5px rgba(11, 11, 12, 0.18),
    inset 0 0 8px 4px rgba(11, 11, 12, 0.03),
    0 0 0 0.5px rgba(11, 11, 12, 0.10),
    0 14px 30px -14px rgba(11, 11, 12, 0.45),
    0 4px 10px -6px rgba(11, 11, 12, 0.25);
  transform: translateY(22px) scale(0.8); opacity: 0;
  transition: transform 0.7s var(--hunt-spring), opacity 0.45s var(--hunt-ease), box-shadow 0.4s var(--hunt-ease);
}
.hunt-satchel.is-on { display: flex; }
.hunt-satchel.is-in { transform: none; opacity: 1; }
.hunt-satchel svg { width: 24px; height: 24px; display: block; }
.hunt-satchel .hunt-ico-chest { display: none; }
.hunt-satchel.is-chest .hunt-ico-bag { display: none; }
.hunt-satchel.is-chest .hunt-ico-chest { display: block; }
@media (hover: hover) { .hunt-satchel.is-in:hover { transform: translateY(-2px) scale(1.05); } }
.hunt-satchel.is-in:active { transform: scale(0.94); transition-duration: 0.15s; }
.hunt-satchel:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--hunt-paper), 0 0 0 4px var(--hunt-ink); }
.hunt-satchel.is-open { transform: scale(0.9); opacity: 0.6; }
/* piece count, mono, tucked on the rim */
.hunt-badge {
  position: absolute; right: -4px; top: -4px; min-width: 18px; height: 18px; padding: 0 5px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 9999px; background: var(--hunt-ink); color: var(--hunt-paper);
  font-family: var(--hunt-mono); font-size: 0.6rem; line-height: 1; letter-spacing: 0.02em;
}
/* a piece lands: a quick bump */
.hunt-satchel.is-bump { animation: huntBump 0.55s var(--hunt-spring); }
@keyframes huntBump { 0% { transform: scale(1); } 35% { transform: scale(1.22) rotate(-6deg); } 70% { transform: scale(0.96) rotate(3deg); } 100% { transform: scale(1); } }
/* the fifth piece: the satchel becomes a chest and rattles */
.hunt-satchel.is-shake { animation: huntShake 0.9s var(--hunt-ease); }
@keyframes huntShake {
  0%, 100% { transform: translate(0, 0) rotate(0); }
  10% { transform: translate(-3px, 0) rotate(-6deg); } 20% { transform: translate(3px, -1px) rotate(6deg); }
  30% { transform: translate(-4px, 0) rotate(-7deg); } 40% { transform: translate(4px, -2px) rotate(7deg); }
  50% { transform: translate(-3px, 0) rotate(-5deg); } 60% { transform: translate(3px, -1px) rotate(4deg); }
  70% { transform: translate(-2px, 0) rotate(-3deg); } 80% { transform: translate(2px, 0) rotate(2deg); }
  90% { transform: translate(-1px, 0) rotate(-1deg); }
}

/* ---------- the panel ---------- */
.hunt-panel {
  position: fixed; left: 1.1rem; bottom: calc(1.1rem + 60px + env(safe-area-inset-bottom, 0px)); z-index: 141;
  width: min(440px, calc(100vw - 2.2rem)); max-height: calc(100vh - 6rem); max-height: calc(100dvh - 6rem);
  overflow: auto; overscroll-behavior: contain;
  padding: 1.25rem 1.25rem 1.35rem; border-radius: 1.25rem;
  color: var(--hunt-ink); font-family: var(--hunt-sans);
  background: rgba(250, 249, 246, 0.82);
  -webkit-backdrop-filter: blur(18px) saturate(1.5); backdrop-filter: blur(18px) saturate(1.5);
  box-shadow:
    inset 0 1.4px 0.5px -0.5px rgba(255, 255, 255, 1),
    inset 1px 0 0.5px -0.5px rgba(255, 255, 255, 0.55),
    inset -1px 0 0.5px -0.5px rgba(255, 255, 255, 0.55),
    inset 0 -1px 0.5px -0.5px rgba(11, 11, 12, 0.14),
    0 0 0 0.5px rgba(11, 11, 12, 0.10),
    0 40px 70px -30px rgba(11, 11, 12, 0.5),
    0 12px 28px -18px rgba(11, 11, 12, 0.35);
  transform-origin: 24px calc(100% + 30px);
  transform: translateY(12px) scale(0.96); opacity: 0; pointer-events: none;
  transition: transform 0.55s var(--hunt-spring), opacity 0.3s var(--hunt-ease);
}
.hunt-panel.is-open { transform: none; opacity: 1; pointer-events: auto; }
.hunt-panel[hidden] { display: none; }
.hunt-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.hunt-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem;
  font-family: var(--hunt-sans); font-size: 0.68rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--hunt-muted); font-weight: 500;
}
.hunt-eyebrow::before { content: ""; width: 18px; height: 1px; background: var(--hunt-ink); opacity: 0.35; }
.hunt-count { font-family: var(--hunt-mono); font-size: 0.7rem; color: var(--hunt-faint); letter-spacing: 0.02em; }
.hunt-close {
  appearance: none; border: 0; background: transparent; padding: 0.4rem; margin: -0.4rem -0.4rem -0.4rem 0; border-radius: 9999px; cursor: pointer;
  color: var(--hunt-muted); font-family: var(--hunt-mono); font-size: 0.8rem; line-height: 1;
  transition: color 0.25s var(--hunt-ease), transform 0.3s var(--hunt-spring);
}
.hunt-close:hover, .hunt-close:focus-visible { color: var(--hunt-ink); outline: none; }
.hunt-close:focus-visible { box-shadow: 0 0 0 2px var(--hunt-ink); }
.hunt-close:active { transform: scale(0.9); }

/* the five slots: three on the first tear, two on the second, always in order */
.hunt-slots { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.5rem 0.4rem; }
.hunt-slot {
  position: relative; aspect-ratio: 480 / 340; display: flex; align-items: center; justify-content: center;
  transform: rotate(var(--tilt, 0deg));
}
.hunt-slot:nth-child(1) { --tilt: -2deg; } .hunt-slot:nth-child(2) { --tilt: 1.4deg; } .hunt-slot:nth-child(3) { --tilt: -1deg; }
.hunt-slot:nth-child(4) { --tilt: 1.8deg; grid-column: 1; } .hunt-slot:nth-child(5) { --tilt: -1.6deg; }
.hunt-slot img { width: 100%; height: 100%; object-fit: contain; display: block; filter: drop-shadow(0 6px 10px rgba(11, 11, 12, 0.22)); }
/* a held piece is a button: tap to see it large */
.hunt-slot-btn {
  appearance: none; border: 0; background: none; padding: 0; margin: 0; width: 100%; height: 100%; display: block; cursor: zoom-in; border-radius: 0.4rem;
  -webkit-tap-highlight-color: transparent; transition: transform 0.45s var(--hunt-spring);
}
@media (hover: hover) { .hunt-slot-btn:hover { transform: scale(1.05); } }
.hunt-slot-btn:active { transform: scale(0.96); transition-duration: 0.15s; }
.hunt-slot-btn:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--hunt-paper), 0 0 0 4px var(--hunt-ink); }
.hunt-slot.is-new img { animation: huntSettle 0.7s var(--hunt-spring) both; }
@keyframes huntSettle { from { transform: scale(0.6) rotate(-10deg); opacity: 0; } to { transform: none; opacity: 1; } }
/* a missing piece: the torn shape it would fill, ghosted */
.hunt-slot.is-empty::before {
  content: ""; position: absolute; inset: 6% 4%;
  background: rgba(11, 11, 12, 0.055);
  clip-path: polygon(3% 8%, 22% 2%, 41% 9%, 60% 3%, 78% 10%, 97% 5%, 94% 30%, 99% 52%, 93% 74%, 97% 96%, 76% 91%, 58% 98%, 39% 92%, 19% 97%, 2% 93%, 6% 70%, 1% 48%, 7% 26%);
}
.hunt-slot.is-empty::after {
  content: attr(data-n); position: relative; font-family: var(--hunt-mono); font-size: 0.66rem; color: var(--hunt-faint); letter-spacing: 0.06em;
}
/* all five: the tilt goes, the gaps go, the tears meet */
.hunt-panel.is-chest .hunt-slots { gap: 0; }
.hunt-panel.is-chest .hunt-slot { --tilt: 0deg; margin: 0 -3px; }

.hunt-hint { margin: 1rem 0 0; font-size: 0.82rem; line-height: 1.6; color: var(--hunt-muted); }
.hunt-hint a { color: var(--hunt-ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: rgba(11, 11, 12, 0.35); transition: text-decoration-color 0.25s var(--hunt-ease); }
.hunt-hint a:hover, .hunt-hint a:focus-visible { text-decoration-color: var(--hunt-ink); outline: none; }
.hunt-hint a:focus-visible { box-shadow: 0 0 0 2px var(--hunt-ink); border-radius: 2px; }

/* ---------- the claim form (the chest) ---------- */
.hunt-claim { margin-top: 1.1rem; padding-top: 1.1rem; border-top: 1px solid var(--hunt-line); }
.hunt-claim h3 { margin: 0 0 0.25rem; font-family: var(--hunt-display); font-weight: 800; font-size: 1.35rem; letter-spacing: -0.03em; line-height: 1; }
.hunt-claim p.hunt-lede { margin: 0 0 0.9rem; font-size: 0.82rem; line-height: 1.6; color: var(--hunt-muted); }
.hunt-claim label { display: block; margin-bottom: 0.6rem; }
.hunt-claim label > span { display: block; font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--hunt-muted); margin-bottom: 0.3rem; font-weight: 500; }
.hunt-field {
  width: 100%; box-sizing: border-box; background: #fff; border: 0; border-radius: 0.8rem; padding: 0.75rem 0.95rem;
  font: inherit; font-size: 16px; color: var(--hunt-ink);
  box-shadow: inset 0 0 0 1px var(--hunt-line); transition: box-shadow 0.3s var(--hunt-ease);
}
.hunt-field:focus { outline: none; box-shadow: inset 0 0 0 1.5px var(--hunt-ink); }
.hunt-field::placeholder { color: var(--hunt-faint); }
.hunt-field.invalid, .hunt-field.invalid:focus { box-shadow: inset 0 0 0 1.5px #b4452f; }
.hunt-field.hunt-phrase { font-family: var(--hunt-mono); letter-spacing: 0.04em; }
.hunt-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; }
@media (max-width: 380px) { .hunt-row { grid-template-columns: 1fr; gap: 0; } }
.hunt-consent { display: flex; align-items: flex-start; gap: 0.6rem; margin: 0.2rem 0 0.9rem; font-size: 0.8rem; line-height: 1.5; color: var(--hunt-muted); cursor: pointer; }
.hunt-consent input { margin: 0.2rem 0 0; width: 16px; height: 16px; flex: none; accent-color: var(--hunt-ink); cursor: pointer; }
.hunt-consent input:focus-visible { outline: 2px solid var(--hunt-ink); outline-offset: 2px; }
.hunt-submit {
  appearance: none; width: 100%; border: 0; border-radius: 0.8rem; padding: 0.85rem 1.2rem; cursor: pointer;
  background: var(--hunt-ink); color: var(--hunt-paper); font-family: var(--hunt-display); font-weight: 700; font-size: 0.95rem; letter-spacing: -0.01em;
  display: inline-flex; align-items: center; justify-content: center; gap: 0.6rem;
  transition: transform 0.4s var(--hunt-spring), opacity 0.3s var(--hunt-ease);
}
.hunt-submit .arr { font-family: var(--hunt-mono); font-weight: 400; transition: transform 0.4s var(--hunt-ease); }
@media (hover: hover) { .hunt-submit:hover { transform: translateY(-2px); } .hunt-submit:hover .arr { transform: translateX(3px); } }
.hunt-submit:active { transform: scale(0.98); }
.hunt-submit:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--hunt-paper), 0 0 0 4px var(--hunt-ink); }
.hunt-submit[disabled] { opacity: 0.55; cursor: default; transform: none; }
.hunt-err { margin: 0.6rem 0 0; min-height: 1.2em; font-size: 0.8rem; color: #b4452f; }
.hunt-done { padding: 0.4rem 0 0; }
.hunt-done h3 { margin: 0 0 0.5rem; font-family: var(--hunt-display); font-weight: 800; font-size: 1.5rem; letter-spacing: -0.03em; line-height: 1.05; }
.hunt-done p { margin: 0; font-size: 0.85rem; line-height: 1.65; color: var(--hunt-muted); }
.hunt-done p + p { margin-top: 0.4rem; }
.hunt-done .hunt-rank { font-family: var(--hunt-mono); font-size: 0.7rem; color: var(--hunt-faint); margin-top: 0.8rem; letter-spacing: 0.04em; }

/* ---------- enlarge: a piece, centred, over a dimmed page ---------- */
.hunt-zoom { position: fixed; inset: 0; z-index: 150; display: flex; align-items: center; justify-content: center; padding: 1rem; }
.hunt-zoom[hidden] { display: none; }
.hunt-zoom-back { position: absolute; inset: 0; background: rgba(11, 11, 12, 0.58); opacity: 0; transition: opacity 0.3s var(--hunt-ease); }
.hunt-zoom.is-open .hunt-zoom-back { opacity: 1; }
.hunt-zoom-fig {
  position: relative; appearance: none; border: 0; background: none; padding: 0; margin: 0; cursor: zoom-out; border-radius: 0.6rem;
  width: min(90vw, 720px); -webkit-tap-highlight-color: transparent;
  transform: scale(0.84) translateY(12px); opacity: 0;
  transition: transform 0.55s var(--hunt-spring), opacity 0.3s var(--hunt-ease);
}
.hunt-zoom.is-open .hunt-zoom-fig { transform: none; opacity: 1; }
.hunt-zoom-fig img { width: 100%; height: auto; display: block; filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.5)); }
.hunt-zoom-fig:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(250, 249, 246, 0.9), 0 0 0 6px rgba(11, 11, 12, 0.7); }
.hunt-zoom-close {
  position: absolute; top: max(1rem, env(safe-area-inset-top, 0px)); right: 1rem; width: 44px; height: 44px; border: 0; border-radius: 9999px; cursor: pointer;
  display: flex; align-items: center; justify-content: center; padding: 0;
  background: rgba(250, 249, 246, 0.92); color: var(--hunt-ink); font-family: var(--hunt-mono); font-size: 0.85rem; line-height: 1;
  box-shadow: 0 0 0 0.5px rgba(11, 11, 12, 0.12), 0 10px 24px -12px rgba(0, 0, 0, 0.6);
  transform: scale(0.8); opacity: 0; transition: transform 0.45s var(--hunt-spring), opacity 0.3s var(--hunt-ease);
}
.hunt-zoom.is-open .hunt-zoom-close { transform: none; opacity: 1; }
@media (hover: hover) { .hunt-zoom.is-open .hunt-zoom-close:hover { transform: scale(1.06); } }
.hunt-zoom.is-open .hunt-zoom-close:active { transform: scale(0.92); }
.hunt-zoom-close:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--hunt-paper), 0 0 0 4px var(--hunt-ink); }

/* ---------- the award: a scrap flies from the middle of the screen into the satchel ---------- */
.hunt-scrap {
  position: fixed; left: 50%; top: 50%; z-index: 146; width: min(240px, 60vw); pointer-events: none;
  transform: translate(-50%, -50%); will-change: transform, opacity;
}
.hunt-scrap img { width: 100%; height: auto; display: block; filter: drop-shadow(0 14px 24px rgba(11, 11, 12, 0.35)); }

/* ---------- the chase: a fixed bottle that sinks down the page ahead of the scroll ---------- */
.hunt-bottle {
  position: fixed; left: 0; top: 0; z-index: 60; width: 40px; height: 64px; pointer-events: none;
  will-change: transform; opacity: 0; transition: opacity 0.6s var(--hunt-ease);
  filter: drop-shadow(0 8px 12px rgba(11, 11, 12, 0.22));
}
.hunt-bottle.is-in { opacity: 1; }
.hunt-bottle svg { width: 100%; height: 100%; display: block; }

/* ---------- the still route (reduced motion): open the bottle in place ---------- */
.hunt-static { margin-top: 0.9rem; font-family: var(--hunt-mono); font-size: 0.78rem; color: var(--hunt-muted); }
.hunt-open-link {
  appearance: none; background: none; border: 0; padding: 0.3rem 0.1rem; cursor: pointer; font: inherit; color: var(--hunt-ink);
  text-decoration: underline; text-decoration-style: dotted; text-underline-offset: 4px; text-decoration-color: rgba(11, 11, 12, 0.4);
  transition: text-decoration-color 0.25s var(--hunt-ease);
}
.hunt-open-link:hover, .hunt-open-link:focus-visible { text-decoration-color: var(--hunt-ink); outline: none; }
.hunt-open-link:focus-visible { box-shadow: 0 0 0 2px var(--hunt-ink); border-radius: 2px; }
.hunt-open-link:active { opacity: 0.7; }
.hunt-note {
  margin-top: 0.8rem; padding: 1rem 1.1rem; border-radius: 0.6rem; max-width: 34em;
  background: linear-gradient(160deg, #F1E7CF, #E4D5B3); color: #2A2116;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) inset, 0 10px 24px -14px rgba(11, 11, 12, 0.4);
  white-space: pre-line; line-height: 1.7;
}
.hunt-note[hidden] { display: none; }
.hunt-note-piece {
  appearance: none; border: 0; background: none; padding: 0; margin: 0.9rem 0 0; display: block; width: min(100%, 320px); cursor: zoom-in; border-radius: 0.4rem;
  transform: rotate(-2deg); transition: transform 0.45s var(--hunt-spring);
}
.hunt-note-piece[hidden] { display: none; }
.hunt-note-piece img { width: 100%; height: auto; display: block; filter: drop-shadow(0 10px 16px rgba(11, 11, 12, 0.3)); }
@media (hover: hover) { .hunt-note-piece:hover { transform: rotate(0) scale(1.03); } }
.hunt-note-piece:active { transform: scale(0.97); }
.hunt-note-piece:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--hunt-paper), 0 0 0 4px var(--hunt-ink); }

/* page-level scroll hold used during the kraken sequence (see __mekoHunt.hold) */
html.hunt-hold, html.hunt-hold body { overflow: hidden !important; }

@media (prefers-reduced-motion: reduce) {
  .hunt-satchel, .hunt-panel, .hunt-close, .hunt-submit, .hunt-slot-btn, .hunt-note-piece,
  .hunt-zoom-back, .hunt-zoom-fig, .hunt-zoom-close { transition-duration: 0.01ms; }
  .hunt-satchel.is-bump, .hunt-satchel.is-shake, .hunt-slot.is-new img { animation: none; }
}

/* ---------- test mode panel (?hunt=test) ---------- */
.hunt-test {
  position: fixed; right: 12px; bottom: 12px; z-index: 2147483000;
  width: min(340px, calc(100vw - 24px));
  padding: 10px 10px 8px; border-radius: 16px;
  background: rgba(250, 249, 246, 0.94); color: #0b0b0c;
  border: 1px solid rgba(11, 11, 12, 0.12);
  box-shadow: 0 0 0 1px rgba(11, 11, 12, 0.04), 0 18px 40px -18px rgba(11, 11, 12, 0.35);
  font: 12px/1.4 "JetBrains Mono", ui-monospace, monospace;
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
}
.hunt-test-title {
  display: flex; align-items: baseline; gap: 8px; width: 100%;
  margin: 0 0 8px; padding: 2px 2px 6px; border: 0; border-bottom: 1px solid rgba(11, 11, 12, 0.08);
  background: none; color: inherit; font: inherit; font-weight: 700; text-align: left; cursor: pointer;
}
.hunt-test-title:focus-visible { outline: 2px solid #0b0b0c; outline-offset: 2px; border-radius: 6px; }
.hunt-test-sub { font-weight: 400; color: #6b6862; }
.hunt-test-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; }
.hunt-test-btn {
  padding: 7px 6px; border-radius: 999px; border: 1px solid rgba(11, 11, 12, 0.14);
  background: rgba(255, 255, 255, 0.7); color: #0b0b0c; font: inherit; font-size: 11px; cursor: pointer;
  transition: background-color 0.18s, color 0.18s, border-color 0.18s, transform 0.18s;
}
.hunt-test-btn:hover { background: #0b0b0c; color: #faf9f6; border-color: #0b0b0c; }
.hunt-test-btn:active { transform: scale(0.97); }
.hunt-test-btn:focus-visible { outline: 2px solid #0b0b0c; outline-offset: 2px; }
.hunt-test-log { margin: 8px 0 0; padding: 6px 0 0; border-top: 1px solid rgba(11, 11, 12, 0.08); list-style: none; color: #6b6862; max-height: 96px; overflow: auto; }
.hunt-test-log li { padding: 1px 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hunt-test.is-min .hunt-test-grid, .hunt-test.is-min .hunt-test-log { display: none; }
.hunt-test.is-min .hunt-test-title { margin: 0; padding-bottom: 2px; border-bottom: 0; }
.hunt-err.is-ok { color: #3daa6e; }
@media (max-width: 640px) { .hunt-test { bottom: 76px; } .hunt-test-grid { grid-template-columns: repeat(2, 1fr); } }

/* The site hides the native cursor on fine pointers and draws its own; none
   of the hunt's controls may bring the native one back. Touch keeps its own. */
@media (pointer: fine) {
  [class^="hunt-"], [class*=" hunt-"], [class^="hunt-"] *, [class*=" hunt-"] *,
  [class^="wreck-"], [class*=" wreck-"], [class^="wreck-"] *, [class*=" wreck-"] * { cursor: none !important; }
}
