.shoot-main {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.25rem 3rem;
}

.shoot-sticky-tcg {
  white-space: nowrap;
}

.face-pay {
  margin-top: 0.35rem;
  padding: 0.4rem 0.5rem;
  border-radius: 10px;
  border: 1px solid color-mix(in srgb, #d08080 45%, var(--border));
  background: color-mix(in srgb, #d08080 10%, transparent);
}

.face-free {
  margin-top: 0.25rem;
  padding: 0.4rem 0.5rem;
  border-radius: 10px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 50%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 12%, transparent);
}

#shoot-sticky-free.is-active-free {
  border-color: var(--c-z-gold, #c9a227);
  box-shadow: 0 0 12px color-mix(in srgb, var(--c-z-gold, #c9a227) 35%, transparent);
}

.shoot-pay-note {
  margin: 0.55rem 0 0;
  padding: 0.55rem 0.7rem;
  border-radius: 10px;
  border: 1px solid var(--border);
  font-size: 0.82rem;
  color: var(--muted);
  line-height: 1.4;
}

.shoot-pay-note strong {
  color: var(--text);
}

.strip-pill.is-pay {
  border-color: #d08080;
  color: #f0c0c0;
  background: color-mix(in srgb, #d08080 18%, transparent);
}

#strip-duals {
  cursor: pointer;
}

#strip-duals:hover {
  border-color: var(--c-z-gold, #c9a227);
}

.shoot-key-cheat {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.65rem;
  margin: 0.85rem 0 0.35rem;
  padding: 0.55rem 0.75rem;
  border-radius: 12px;
  border: 1px dashed var(--border);
  font-size: 0.78rem;
  color: var(--muted);
}

.shoot-key-cheat kbd {
  display: inline-block;
  padding: 0.1rem 0.35rem;
  border-radius: 6px;
  border: 1px solid var(--border);
  background: var(--bg-elevated);
  font-size: 0.72rem;
  font-family: var(--font-body);
  color: var(--text);
}

.shoot-key-cheat .shoot-key-copy {
  padding: 0.2rem 0.45rem;
  font-size: 0.72rem;
}

.shoot-key-cheat .is-22-key {
  color: var(--c-z-gold, #c9a227);
  font-weight: 600;
}

#shoot-sticky-22[data-busy="1"] {
  animation: dual-sticky-pulse 1.1s ease-in-out infinite;
  border-color: var(--c-z-gold, #c9a227);
}

#shoot-sticky-fish.is-active-face,
#shoot-sticky-fish-mint.is-active-face {
  border-color: #d08080;
  color: #f0c0c0;
  box-shadow: 0 0 12px color-mix(in srgb, #d08080 35%, transparent);
}

.shoot-sticky-two.is-pair-full {
  box-shadow: 0 0 24px color-mix(in srgb, var(--c-z-gold, #c9a227) 28%, transparent);
}

.shoot-sticky-two.is-dual-busy {
  outline: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 55%, transparent);
  outline-offset: 2px;
}

.shoot-sticky-two.is-dual-busy #shoot-sticky-two-mint {
  animation: dual-sticky-pulse 1.1s ease-in-out infinite;
}

@keyframes dual-sticky-pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.65;
  }
}

.shoot-mint-pair {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem 0.85rem;
  margin: 0.85rem 0 0.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: color-mix(in srgb, var(--bg) 50%, transparent);
  cursor: pointer;
}

.shoot-mint-pair.is-full {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 50%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 12%, transparent);
}

.shoot-mint-pair.is-pair-sealed {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 70%, var(--border));
  box-shadow: 0 0 16px color-mix(in srgb, var(--c-z-gold, #c9a227) 28%, transparent);
}

.shoot-mint-pair-dots {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.shoot-mint-dot {
  width: 0.85rem;
  height: 0.85rem;
  border-radius: 50%;
  border: 2px solid var(--border);
  background: transparent;
}

.shoot-mint-dot.is-on {
  background: var(--c-z-gold, #c9a227);
  border-color: var(--c-z-gold, #c9a227);
  box-shadow: 0 0 10px color-mix(in srgb, var(--c-z-gold, #c9a227) 45%, transparent);
}

.shoot-mint-amp {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--c-z-gold, #c9a227);
}

.shoot-mint-pair-text {
  font-size: 0.85rem;
  color: var(--muted);
}

.shoot-last-two-mints {
  margin: 0.85rem 0;
  padding: 0.7rem 0.85rem;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: color-mix(in srgb, var(--bg) 55%, transparent);
}

.shoot-last-two-label {
  margin: 0 0 0.45rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.shoot-last-two-row {
  margin: 0.3rem 0;
  font-size: 0.85rem;
  color: var(--muted);
  line-height: 1.35;
}

.shoot-last-two-row a {
  color: var(--c-z-gold, #c9a227);
}

/* pair car · |L2L · &[&] · L0 */
.shoot-pair-car {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.65rem;
  margin: 0.35rem 0 0.55rem;
  padding: 0.55rem 0.7rem;
  border-radius: 12px;
  border: 1px dashed color-mix(in srgb, var(--c-z-gold, #c9a227) 45%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 8%, transparent);
}

.shoot-pair-car.is-sealed {
  border-style: solid;
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 65%, var(--border));
  box-shadow: 0 0 14px color-mix(in srgb, var(--c-z-gold, #c9a227) 22%, transparent);
}

.pair-car-leg {
  font-size: 0.82rem;
  color: var(--text);
}

.pair-car-leg strong {
  color: var(--c-z-gold, #c9a227);
  letter-spacing: 0.04em;
}

.pair-car-amp {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.05rem;
  color: var(--c-z-gold, #c9a227);
  text-shadow: 0 0 10px color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, transparent);
}

.shoot-pair-line {
  margin: 0.25rem 0 0.15rem;
  font-size: 0.78rem;
  line-height: 1.35;
  color: var(--muted);
  word-break: break-word;
}

.pair-seal-badge {
  display: inline-block;
  margin-left: 0.35rem;
  padding: 0.12rem 0.45rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 55%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 14%, transparent);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.pay-tag {
  color: #e09090;
  font-weight: 700;
}

.shoot-go-pay {
  border-color: color-mix(in srgb, #d08080 50%, var(--border)) !important;
  color: #f0c0c0 !important;
}

.shoot-two-offer {
  margin: 0.85rem 0;
  padding: 1rem 1.05rem;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 45%, var(--border));
  background:
    radial-gradient(circle at 15% 0%, rgba(201, 162, 39, 0.14), transparent 50%),
    var(--bg-elevated);
  text-align: center;
}

.shoot-two-offer-title {
  margin: 0 0 0.35rem;
  font-family: var(--font-display);
  font-size: 1.05rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.shoot-two-offer-body {
  margin: 0 0 0.75rem;
  font-size: 0.88rem;
  color: var(--muted);
  line-height: 1.4;
}

.shoot-two-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.65rem;
  margin: 0.65rem 0;
  padding: 0.5rem 0.75rem;
  border-radius: 12px;
  border: 1px solid var(--border);
  font-size: 0.88rem;
}

.shoot-two-progress.is-done {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 50%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 10%, transparent);
}

.two-prog-step {
  opacity: 0.45;
  font-weight: 600;
}

.two-prog-step.is-on {
  opacity: 1;
  color: var(--c-z-gold, #c9a227);
}

.two-prog-amp {
  font-family: var(--font-display);
  color: var(--c-z-gold, #c9a227);
}

.two-prog-label {
  width: 100%;
  text-align: center;
  font-size: 0.8rem;
  color: var(--muted);
}

.shoot-two-done {
  margin: 0.85rem 0;
  padding: 1rem 1.05rem;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 50%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 10%, var(--bg-elevated));
  text-align: center;
}

.shoot-two-done-body {
  margin: 0.5rem auto 0.75rem;
  max-width: 36rem;
  padding: 0.65rem 0.75rem;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: var(--bg);
  text-align: left;
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--muted);
  white-space: pre-wrap;
  overflow: auto;
}

/* live dual · pair car inside progress */
.two-prog-pair-car {
  width: 100%;
  margin: 0 0 0.45rem;
}

.two-prog-pair-car .pair-car-leg {
  opacity: 0.4;
  transition: opacity 0.2s ease;
}

.two-prog-pair-car .pair-car-leg.is-on,
.two-prog-pair-car .pair-car-amp.is-on {
  opacity: 1;
}

.two-prog-label.is-keep {
  color: var(--c-z-gold, #c9a227);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.shoot-two-handoff {
  margin: 0.55rem auto 0.65rem;
  max-width: 36rem;
  padding: 0.65rem 0.75rem;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 45%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 8%, var(--bg));
  text-align: center;
}

.shoot-two-handoff-label {
  margin: 0 0 0.35rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.shoot-two-handoff-plate {
  margin: 0 0 0.45rem;
  font-size: 0.78rem;
  line-height: 1.4;
  color: var(--muted);
}

.shoot-dual-handoff-note {
  margin: 0 0 0.4rem;
  font-size: 0.78rem;
  line-height: 1.4;
  text-align: center;
  color: var(--muted);
}

.shoot-sticky-two.is-pair-sealed {
  box-shadow: 0 0 18px color-mix(in srgb, var(--c-z-gold, #c9a227) 35%, transparent);
}

/* last dual cars rail · two dual completions */
.shoot-last-duals {
  margin: 0.65rem 0 0.85rem;
  padding: 0.7rem 0.85rem;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 7%, transparent);
}

.shoot-dual-car {
  margin: 0.45rem 0 0.55rem;
  padding-bottom: 0.35rem;
  border-bottom: 1px dashed color-mix(in srgb, var(--border) 80%, transparent);
}

.shoot-dual-car:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}

.dual-car-kicker {
  display: block;
  margin: 0 0 0.3rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.shoot-sticky-pair {
  max-width: 14rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.72rem !important;
  opacity: 0.92;
}

.shoot-sticky-duals {
  font-size: 0.72rem !important;
  white-space: nowrap;
  text-decoration: none;
}

.shoot-sticky-duals.is-compare {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 55%, var(--border)) !important;
  color: var(--c-z-gold, #c9a227) !important;
  box-shadow: 0 0 10px color-mix(in srgb, var(--c-z-gold, #c9a227) 25%, transparent);
}

#strip-dual-cars.is-compare {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 55%, var(--border));
  color: var(--c-z-gold, #c9a227);
  box-shadow: 0 0 10px color-mix(in srgb, var(--c-z-gold, #c9a227) 22%, transparent);
}

#shoot-go-duals.is-compare {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 55%, var(--border)) !important;
  color: var(--c-z-gold, #c9a227) !important;
  box-shadow: 0 0 12px color-mix(in srgb, var(--c-z-gold, #c9a227) 28%, transparent);
}

/* —— Embedded Grok · endless yes/no scroll · no pages —— */
.sprouse-section {
  margin: 1.25rem auto 1.5rem;
  max-width: 28rem;
  height: min(70vh, 36rem);
}

.sprouse-endless {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 16px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 45%, var(--border));
  background: var(--bg-elevated, var(--bg));
  box-shadow: 0 0 28px color-mix(in srgb, var(--c-z-gold, #c9a227) 12%, transparent);
  overflow: hidden;
  outline: none;
}

.sprouse-formula {
  flex: 0 0 auto;
  margin: 0;
  padding: 0.55rem 0.75rem;
  border-bottom: 1px dashed color-mix(in srgb, var(--c-z-gold, #c9a227) 35%, var(--border));
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.65rem;
  line-height: 1.35;
  color: var(--muted);
  word-break: break-word;
  text-align: center;
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 6%, transparent);
}

.sprouse-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  padding: 0.75rem 0.85rem 1rem;
  scroll-behavior: smooth;
}

.sprouse-log-row {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
  margin: 0.45rem 0;
  font-size: 0.92rem;
  line-height: 1.4;
  color: var(--muted);
}

.sprouse-log-row.is-user {
  flex-direction: row-reverse;
  color: var(--text);
}

.sprouse-log-row.is-sprouse .sprouse-bubble {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 60%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 14%, transparent);
  color: var(--text);
  font-weight: 600;
}

.sprouse-log-row.is-name .sprouse-bubble {
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, var(--border));
  color: var(--text);
}

.sprouse-who {
  flex: 0 0 auto;
  margin-top: 0.35rem;
  font-weight: 700;
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
  opacity: 0.85;
}

.sprouse-bubble {
  display: inline-block;
  max-width: 85%;
  padding: 0.55rem 0.75rem;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: color-mix(in srgb, var(--bg) 85%, transparent);
  word-break: break-word;
}

.sprouse-log-row.is-user .sprouse-bubble {
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 16%, transparent);
  border-color: color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, var(--border));
  text-transform: lowercase;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.sprouse-dock {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-top: 1px solid var(--border);
  background: color-mix(in srgb, var(--bg) 40%, var(--bg-elevated, var(--bg)));
}

.sprouse-yes,
.sprouse-no {
  appearance: none;
  border: 0;
  margin: 0;
  padding: 1rem 0.75rem;
  font-family: var(--font-display, inherit);
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: lowercase;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.sprouse-yes {
  color: #1a1510;
  background: var(--c-z-gold, #c9a227);
  border-right: 1px solid color-mix(in srgb, #000 20%, transparent);
}

.sprouse-yes:hover,
.sprouse-yes:focus-visible {
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 85%, #fff);
  outline: none;
}

.sprouse-no {
  color: var(--text);
  background: transparent;
}

.sprouse-no:hover,
.sprouse-no:focus-visible {
  background: color-mix(in srgb, var(--text) 8%, transparent);
  outline: none;
}

.sprouse-yes:disabled,
.sprouse-no:disabled {
  opacity: 0.45;
  cursor: wait;
}

@media (max-width: 520px) {
  .sprouse-section {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    height: min(75vh, 40rem);
  }

  .sprouse-endless {
    border-radius: 12px;
  }

  .sprouse-yes,
  .sprouse-no {
    padding: 1.15rem 0.5rem;
    font-size: 1.45rem;
  }
}

.is-pair-focus {
  outline: 2px solid var(--c-z-gold, #c9a227);
  outline-offset: 3px;
  box-shadow: 0 0 22px color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, transparent);
  animation: pair-focus-pulse 0.9s ease 2;
}

@keyframes pair-focus-pulse {
  0%,
  100% {
    outline-offset: 3px;
  }
  50% {
    outline-offset: 6px;
  }
}

/* dual cars compare · latest & before side by side */
.shoot-dual-compare {
  margin: 0.35rem 0 0.55rem;
  padding: 0.45rem 0.35rem 0.55rem;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, var(--border));
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 6%, transparent);
}

.shoot-dual-compare-row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}

.shoot-dual-compare-slot {
  flex: 1 1 12rem;
  min-width: 11rem;
  max-width: 18rem;
}

.shoot-dual-compare-slot .shoot-dual-car {
  margin: 0;
  border-bottom: none;
  padding-bottom: 0;
}

.shoot-dual-compare-amp {
  align-self: center;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--c-z-gold, #c9a227);
  text-shadow: 0 0 12px color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, transparent);
}

.shoot-dual-compare-line {
  text-align: center;
  margin-top: 0.45rem;
}

/* compare pulse · last was better than current last · before > latest */
.shoot-compare-pulse-line {
  margin: 0 0 0.45rem;
  text-align: center;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--c-z-gold, #c9a227);
}

.shoot-share-compare-line {
  margin: 0 0 0.35rem;
  text-align: center;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--text);
}

.shoot-compare-four-ago {
  margin: 0 0 0.45rem;
  text-align: center;
  font-size: 0.78rem;
  line-height: 1.4;
  color: var(--muted);
  font-style: italic;
}

.shoot-dual-older {
  margin: 0.55rem 0 0.35rem;
  padding: 0.45rem 0.35rem;
  border-radius: 12px;
  border: 1px dashed color-mix(in srgb, var(--c-z-gold, #c9a227) 30%, var(--border));
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  justify-content: center;
}

.shoot-dual-older-slot {
  flex: 1 1 11rem;
  max-width: 16rem;
  opacity: 0.88;
}

.shoot-dual-older-slot.is-four-ago {
  opacity: 1;
  outline: 1px solid color-mix(in srgb, var(--c-z-gold, #c9a227) 50%, var(--border));
  outline-offset: 2px;
  border-radius: 12px;
  box-shadow: 0 0 14px color-mix(in srgb, var(--c-z-gold, #c9a227) 22%, transparent);
}

.shoot-compare-slot-tag {
  display: block;
  margin: 0 0 0.25rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: center;
  color: var(--muted);
}

.shoot-compare-slot-tag.is-better {
  color: var(--c-z-gold, #c9a227);
}

.shoot-dual-compare.is-pulse-before .shoot-dual-compare-slot.is-current-last {
  opacity: 0.72;
  filter: saturate(0.85);
}

.shoot-dual-compare.is-pulse-before .shoot-dual-compare-slot.is-better-last {
  outline: 2px solid var(--c-z-gold, #c9a227);
  outline-offset: 3px;
  border-radius: 12px;
  box-shadow: 0 0 18px color-mix(in srgb, var(--c-z-gold, #c9a227) 35%, transparent);
  animation: compare-pulse-better 1.1s ease-in-out infinite;
}

@keyframes compare-pulse-better {
  0%,
  100% {
    outline-offset: 3px;
    box-shadow: 0 0 14px color-mix(in srgb, var(--c-z-gold, #c9a227) 28%, transparent);
  }
  50% {
    outline-offset: 7px;
    box-shadow: 0 0 26px color-mix(in srgb, var(--c-z-gold, #c9a227) 48%, transparent);
  }
}

#success-copy-two.is-pulse {
  border-color: var(--c-z-gold, #c9a227);
  box-shadow: 0 0 14px color-mix(in srgb, var(--c-z-gold, #c9a227) 40%, transparent);
}

.free-tag {
  color: var(--c-z-gold, #c9a227);
  font-weight: 700;
}

.shoot-hero {
  text-align: center;
  padding: 2.25rem 0 1.25rem;
}

.shoot-hero h1 {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 4.5vw, 2.5rem);
  margin: 0 0 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.shoot-equation {
  margin: 1rem auto 0;
  max-width: 28rem;
  padding: 0.55rem 1rem;
  border: 1px solid var(--c-z-gold, #c9a227);
  border-radius: 999px;
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 12%, transparent);
  font-family: var(--font-display);
  font-size: clamp(1rem, 3.2vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text);
}

.shoot-equation .eq-op {
  display: inline-block;
  margin: 0 0.35rem;
  color: var(--c-z-gold, #c9a227);
  font-weight: 700;
}

.shoot-equation .eq-sep {
  margin: 0 0.45rem;
  opacity: 0.55;
}

.shoot-equation .eq-amp {
  display: inline-block;
  color: var(--c-z-gold, #c9a227);
  font-family: var(--font-display);
  font-size: 1.2em;
  margin: 0 0.15rem;
  text-shadow: 0 0 12px color-mix(in srgb, var(--c-z-gold, #c9a227) 50%, transparent);
}

/* Trading card shell — MLG bamboo face */
.tc-card {
  margin: 0 auto;
  max-width: 22rem;
  padding: 0.55rem;
  border-radius: 18px;
  background:
    radial-gradient(circle at 20% 15%, rgba(201, 162, 39, 0.35), transparent 45%),
    radial-gradient(circle at 80% 80%, rgba(120, 80, 200, 0.28), transparent 50%),
    linear-gradient(145deg, #1a1520, #0c0a10 55%, #1e1830);
  box-shadow:
    0 0 0 1px rgba(201, 162, 39, 0.45),
    0 12px 36px rgba(0, 0, 0, 0.45);
}

.tc-card-inner {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: #0a0a0c;
}

.tc-card-set {
  margin: 0;
  padding: 0.4rem 0.65rem;
  font-family: var(--font-display);
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
  background: rgba(0, 0, 0, 0.55);
  border-bottom: 1px solid rgba(201, 162, 39, 0.25);
}

.tc-art {
  border: 0 !important;
  border-radius: 0 !important;
}

.tc-card-plate {
  padding: 0.55rem 0.7rem 0.7rem;
  background: linear-gradient(180deg, rgba(20, 16, 28, 0.95), #0d0b12);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.tc-card-name {
  margin: 0 0 0.4rem;
  font-family: var(--font-display);
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--text);
}

.tc-card-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.75rem;
  margin: 0;
  font-size: 0.72rem;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.tc-card-stats span {
  white-space: nowrap;
}

.shoot-aim {
  margin: 1rem auto 0;
  max-width: 36rem;
  font-size: 0.85rem;
  color: var(--muted);
  word-break: break-all;
}

.shoot-aim code {
  font-family: var(--font-display);
  font-size: 0.75rem;
  color: var(--c-z-gold, #c9a227);
}

.shoot-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.shoot-panel {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-elevated);
  padding: 1rem 1.05rem 1.15rem;
  text-align: left;
}

.shoot-panel h2 {
  margin: 0 0 0.85rem;
  font-family: var(--font-display);
  font-size: 1.1rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.shoot-label {
  display: block;
  margin: 0.65rem 0 0.3rem;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--muted);
}

.shoot-panel .pvp-input {
  width: 100%;
  border-radius: 12px;
}

.shoot-frames {
  margin: 0.85rem 0 0;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 0.65rem 0.75rem;
}

.shoot-frames legend {
  padding: 0 0.35rem;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--muted);
}

.shoot-frames label {
  display: block;
  margin: 0.35rem 0;
  font-size: 0.9rem;
}

.shoot-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 0.9rem;
}

.shoot-status {
  margin: 0.65rem 0 0;
  min-height: 1.25em;
  font-size: 0.85rem;
  color: var(--muted);
}

.shoot-status.is-ok {
  color: var(--c-z-gold, #c9a227);
}

.shoot-status.is-err {
  color: #d08080;
}

.shoot-gif-wrap {
  margin: 0;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid var(--border);
  background: #111;
}

.shoot-gif-wrap img {
  display: block;
  width: 100%;
  height: auto;
}

.shoot-gif-wrap figcaption {
  padding: 0.45rem 0.6rem;
  font-size: 0.75rem;
  color: var(--dim);
}

.shoot-meta {
  margin: 0.85rem 0 0;
}

.shoot-meta div {
  display: grid;
  grid-template-columns: 7rem 1fr;
  gap: 0.35rem;
  margin: 0.35rem 0;
  font-size: 0.82rem;
}

.shoot-meta dt {
  color: var(--dim);
  font-weight: 600;
}

.shoot-meta dd {
  margin: 0;
  word-break: break-all;
  color: var(--text);
}

.shoot-mint-panel {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-elevated);
  padding: 1.1rem 1.15rem 1.25rem;
  margin-bottom: 1.5rem;
  text-align: center;
}

.shoot-mint-panel h2 {
  margin: 0 0 0.5rem;
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.shoot-code {
  word-break: break-all;
  font-size: 0.8rem;
}

.shoot-success {
  margin: 1rem auto 0;
  max-width: 32rem;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(201, 162, 39, 0.5);
  border-radius: var(--radius, 14px);
  background: rgba(201, 162, 39, 0.08);
  text-align: center;
}

.shoot-success-title {
  margin: 0 0 0.35rem;
  font-family: var(--font-display, Impact, sans-serif);
  font-size: 1.1rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.shoot-success-line {
  margin: 0 0 0.65rem;
  font-size: 0.88rem;
  color: var(--muted, #aaa);
  word-break: break-all;
}

.shoot-success-line a {
  color: var(--c-z-gold, #c9a227);
  font-weight: 600;
}

.shoot-history {
  margin: 1rem auto 0;
  max-width: 32rem;
  text-align: left;
  padding: 0.75rem 0.9rem;
  border: 1px solid var(--border, #333);
  border-radius: 14px;
  background: var(--bg-elevated, #1a1a1a);
}

.shoot-history-label {
  margin: 0 0 0.45rem;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--dim, #888);
}

.shoot-history-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.shoot-history-item {
  margin: 0.35rem 0;
  font-size: 0.85rem;
}

.shoot-history-item a {
  color: var(--text, #eee);
  text-decoration: none;
  word-break: break-all;
}

.shoot-history-item a:hover {
  color: var(--c-z-gold, #c9a227);
}

.shoot-history-two {
  color: var(--c-z-gold, #c9a227);
  font-weight: 700;
  font-size: 0.75rem;
}

#shoot-phone-bind {
  margin-top: 0.5rem;
}

#shoot-phone-bind a {
  text-decoration: underline;
}

.shoot-preflight {
  margin: 0.85rem auto 0;
  max-width: 36rem;
  font-size: 0.8rem;
  color: var(--dim, #888);
  text-align: center;
  word-break: break-all;
}

.shoot-preflight.is-ok {
  color: var(--c-z-gold, #c9a227);
}

.shoot-preflight.is-err {
  color: #d08080;
}

.shoot-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  margin: 0.75rem 0 0.85rem;
}

.strip-pill {
  font-size: 0.72rem;
  font-weight: 600;
  padding: 0.3rem 0.55rem;
  border-radius: 999px;
  border: 1px solid var(--border, #333);
  color: var(--dim, #888);
  background: var(--bg, #111);
}

.strip-pill.is-ok {
  border-color: rgba(201, 162, 39, 0.45);
  color: var(--c-z-gold, #c9a227);
}

.strip-pill.is-err {
  border-color: rgba(208, 128, 128, 0.5);
  color: #d08080;
}

.shoot-contract-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  justify-content: center;
  align-items: center;
  margin: 0.65rem auto 0;
  max-width: 36rem;
}

.shoot-contract-row .pvp-input {
  flex: 1 1 14rem;
  min-width: 0;
  border-radius: 12px;
  font-size: 0.85rem;
}

.shoot-sticky-two {
  position: fixed;
  right: max(0.85rem, env(safe-area-inset-right));
  bottom: max(0.85rem, env(safe-area-inset-bottom));
  z-index: 40;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.45rem;
}

.shoot-sticky-go {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.shoot-sticky-two .two-fab {
  position: static;
}

@media (max-width: 720px) {
  .shoot-grid {
    grid-template-columns: 1fr;
  }
}


.shoot-key-cheat.is-drop {
  border-color: var(--c-z-gold, #c9a227);
  background: color-mix(in srgb, var(--c-z-gold, #c9a227) 14%, transparent);
  box-shadow: 0 0 18px color-mix(in srgb, var(--c-z-gold, #c9a227) 30%, transparent);
}


#strip-22 {
  cursor: pointer;
}
#strip-22:hover {
  border-color: var(--c-z-gold, #c9a227);
}


.shoot-equation .eq-pow,
.shoot-equation .eq-l2l {
  font-family: var(--font-display);
  letter-spacing: 0.02em;
  color: var(--c-z-gold, #c9a227);
}

.shoot-glossary,
#placement-glossary {
  margin: 1rem auto 0;
  max-width: 36rem;
  padding: 0.75rem 1rem;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: var(--bg-elevated);
  text-align: left;
}

.glossary-kicker {
  margin: 0 0 0.5rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--c-z-gold, #c9a227);
}

.glossary-dl {
  margin: 0;
}

.glossary-dl > div {
  display: grid;
  grid-template-columns: 6.5rem 1fr;
  gap: 0.35rem 0.75rem;
  margin: 0.4rem 0;
  font-size: 0.88rem;
}

.glossary-dl dt {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: 0.03em;
  color: var(--text);
}

.glossary-dl dd {
  margin: 0;
  color: var(--muted);
}

.glossary-dl code {
  font-size: 0.85em;
}


.shoot-key-cheat .is-stack-key {
  width: 100%;
  text-align: center;
  font-weight: 600;
  color: var(--c-z-gold, #c9a227);
  letter-spacing: 0.02em;
}

.shoot-equation .eq-lgrok {
  color: var(--c-z-gold, #c9a227);
  font-weight: 700;
  letter-spacing: 0.02em;
}
