main[data-tactical-page] {
  --tk-rule: 1px solid var(--color-aluminium-line);
  background: var(--color-cloud-white);
}

[data-tactical-page] section {
  scroll-margin-top: 7rem;
}

[data-tactical-page] .tk-container {
  width: var(--container-inline);
  margin-inline: auto;
}

[data-tactical-page] .tk-section-label {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-3);
  color: var(--color-cobalt-blue);
  font-size: var(--text-eyebrow);
  font-weight: 700;
  letter-spacing: .08em;
  line-height: var(--line-eyebrow);
  text-transform: uppercase;
}

[data-tactical-page] .tk-section-label::before {
  width: .5rem;
  height: .5rem;
  background: var(--color-electric-cyan);
  content: "";
  transform: rotate(45deg);
}

[data-tactical-page] .tk-intro {
  margin-bottom: 0;
  font-size: var(--text-intro);
  line-height: var(--line-intro);
}

[data-tactical-page] .tk-hero {
  padding-block: 4.5rem;
}

[data-tactical-page] .tk-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 1.25rem;
  align-items: center;
}

[data-tactical-page] .tk-hero-copy,
[data-tactical-page] .tk-hero-visual,
[data-tactical-page] .tk-focus-card,
[data-tactical-page] .tk-lane-copy,
[data-tactical-page] .tk-lane-actions,
[data-tactical-page] .tk-map-diagram,
[data-tactical-page] .tk-map-panel,
[data-tactical-page] .tk-object-copy,
[data-tactical-page] .tk-object-image,
[data-tactical-page] .tk-fight-card,
[data-tactical-page] .tk-pressure-image,
[data-tactical-page] .tk-pressure-copy,
[data-tactical-page] .tk-decision-tree,
[data-tactical-page] .tk-pressure-panel,
[data-tactical-page] .tk-stat,
[data-tactical-page] .tk-related-card {
  min-width: 0;
}

[data-tactical-page] .tk-hero-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

[data-tactical-page] .tk-hero-copy > * {
  margin: 0;
}

[data-tactical-page] .tk-hero h1 {
  max-width: 12ch;
  font-size: clamp(3rem, 5vw, 4rem);
}

[data-tactical-page] .tk-hero-dek {
  max-width: 42ch;
  font-size: var(--text-intro);
  line-height: var(--line-intro);
}

[data-tactical-page] .tk-quick-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  gap: .75rem;
}

[data-tactical-page] .tk-quick-link {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 3.25rem;
  padding: .75rem;
  border: var(--tk-rule);
  border-radius: var(--radius-md);
  background: #fff;
  color: var(--color-graphite);
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
  transition: border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
}

[data-tactical-page] .tk-quick-link::before {
  flex: 0 0 auto;
  width: .75rem;
  height: .75rem;
  margin-right: .5rem;
  border: 2px solid var(--color-cobalt-blue);
  content: "";
  transform: rotate(45deg);
}

[data-tactical-page] .tk-quick-link:hover,
[data-tactical-page] .tk-focus-card:hover,
[data-tactical-page] .tk-step:hover,
[data-tactical-page] .tk-related-card:hover {
  border-color: var(--color-cobalt-blue);
  box-shadow: inset 0 2px 0 var(--color-electric-cyan);
  color: var(--color-graphite);
  transform: translateY(-2px);
}

[data-tactical-page] .tk-hero-visual {
  margin: 0;
}

[data-tactical-page] .tk-hero-visual img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  clip-path: polygon(0 0, calc(100% - 1.125rem) 0, 100% 1.125rem, 100% 100%, 0 100%);
}

[data-tactical-page] .tk-hero-visual figcaption {
  margin-bottom: 0;
}

[data-tactical-page] .tk-learning {
  padding-block: 2.5rem 3.5rem;
  border-top: var(--tk-rule);
}

[data-tactical-page] .tk-heading-copy {
  width: 58.333%;
  max-width: 48ch;
}

[data-tactical-page] .tk-heading-copy > :last-child,
[data-tactical-page] .tk-section-heading > :last-child {
  margin-bottom: 0;
}

[data-tactical-page] .tk-focus-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: var(--space-8);
}

[data-tactical-page] .tk-focus-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 14rem;
  padding: var(--space-5);
  border: var(--tk-rule);
  border-radius: var(--radius-md);
  background: #fff;
  color: var(--color-graphite);
  text-decoration: none;
  transition: border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
}

[data-tactical-page] .tk-focus-card > * {
  margin: 0;
}

[data-tactical-page] .tk-focus-card > * + * {
  margin-top: var(--space-3);
}

[data-tactical-page] .tk-card-number {
  color: var(--color-cobalt-blue);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}

[data-tactical-page] .tk-focus-card--map {
  background: var(--color-mist-blue);
}

[data-tactical-page] .tk-focus-card--map .tk-card-number { color: #008fa3; }
[data-tactical-page] .tk-focus-card--fight { border-top: 2px solid var(--color-tangerine-orange); }
[data-tactical-page] .tk-focus-card--fight .tk-card-number { color: var(--color-tangerine-orange); }

[data-tactical-page] .tk-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: auto !important;
  padding-top: var(--space-4);
}

[data-tactical-page] .tk-chip {
  padding: .25rem .5rem;
  border: 1px solid var(--color-aluminium-line);
  border-radius: var(--radius-sm);
  background: #fff;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

[data-tactical-page] .tk-lane {
  padding-block: 3.5rem;
}

[data-tactical-page] .tk-lane-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 2.5rem;
  align-items: start;
}

[data-tactical-page] .tk-lane-copy {
  max-width: 68ch;
}

[data-tactical-page] .tk-side-tag {
  display: inline-block;
  margin-bottom: var(--space-4);
  padding-left: var(--space-3);
  border-left: 3px solid var(--color-electric-cyan);
  color: var(--color-cobalt-blue);
  font-size: var(--text-eyebrow);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

[data-tactical-page] .tk-lane-actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

[data-tactical-page] .tk-steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
}

[data-tactical-page] .tk-step {
  position: relative;
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  padding: var(--space-4);
  border: var(--tk-rule);
  border-left: 3px solid var(--color-cobalt-blue);
  border-radius: var(--radius-md);
  background: #fff;
  transition: border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
}

[data-tactical-page] .tk-step > * { margin: 0; }
[data-tactical-page] .tk-step strong { font-family: var(--font-heading); font-size: 1.35rem; line-height: 1.1; }
[data-tactical-page] .tk-step-number { color: var(--color-cobalt-blue); font-family: var(--font-heading); font-size: 1.75rem; font-weight: 700; line-height: 1; }

[data-tactical-page] .tk-warning {
  padding: var(--space-5);
  border-radius: var(--radius-md);
  background: var(--color-graphite);
  color: var(--color-cloud-white);
}

[data-tactical-page] .tk-warning h3,
[data-tactical-page] .tk-warning p { color: inherit; }
[data-tactical-page] .tk-warning > :last-child { margin-bottom: 0; }

[data-tactical-page] .tk-map-section,
[data-tactical-page] .tk-teamfight,
[data-tactical-page] .tk-practice {
  padding-block: 4.5rem;
  background: var(--color-mist-blue);
}

[data-tactical-page] .tk-map-intro {
  width: 66.666%;
  max-width: 52ch;
}

[data-tactical-page] .tk-map-layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: 1.25rem;
  margin-top: var(--space-8);
  align-items: start;
}

[data-tactical-page] .tk-map-scroll {
  overflow-x: auto;
  border: var(--tk-rule);
  border-radius: var(--radius-md);
  background: #fff;
}

[data-tactical-page] .tk-map-scroll svg {
  width: 100%;
  min-width: 620px;
  height: auto;
}

[data-tactical-page] .tk-map-note {
  display: none;
  margin: 0 0 var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-meta);
}

[data-tactical-page] .tk-map-marker {
  cursor: pointer;
  outline: none;
}

[data-tactical-page] .tk-map-marker circle {
  fill: #fff;
  stroke: var(--color-cobalt-blue);
  stroke-width: 3;
  transition: fill var(--transition-fast), stroke var(--transition-fast);
}

[data-tactical-page] .tk-map-marker text {
  fill: var(--color-graphite);
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 700;
}

[data-tactical-page] .tk-map-marker.is-active circle,
[data-tactical-page] .tk-map-marker:hover circle { fill: var(--color-electric-cyan); stroke: var(--color-graphite); }
[data-tactical-page] .tk-map-route { fill: none; stroke: var(--color-cobalt-blue); stroke-linecap: round; stroke-width: 7; opacity: .25; }
[data-tactical-page] .tk-map-route.is-active { opacity: 1; }

[data-tactical-page] .tk-map-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

[data-tactical-page] .tk-decision-card,
[data-tactical-page] .tk-gank-card {
  padding: var(--space-5);
  border: var(--tk-rule);
  border-radius: var(--radius-md);
  background: #fff;
}

[data-tactical-page] .tk-decision-card > :last-child,
[data-tactical-page] .tk-gank-card > :last-child { margin-bottom: 0; }

[data-tactical-page] .tk-decision-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

[data-tactical-page] .tk-decision-columns > div { min-width: 0; }
[data-tactical-page] .tk-decision-columns h3 { margin-bottom: var(--space-2); font-size: 1.65rem; }
[data-tactical-page] .tk-decision-columns ul { margin-bottom: 0; }
[data-tactical-page] .tk-gank-card { border: 2px solid var(--color-electric-cyan); }

[data-tactical-page] .tk-objectives {
  padding-block: 3.5rem;
}

[data-tactical-page] .tk-object-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.5rem;
  align-items: center;
}

[data-tactical-page] .tk-object-copy { max-width: 66ch; }
[data-tactical-page] .tk-object-image { margin: 0; }
[data-tactical-page] .tk-object-image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-md); }
[data-tactical-page] .tk-object-image figcaption { margin-bottom: 0; }

[data-tactical-page] .tk-checklist {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: var(--space-8);
  border: var(--tk-rule);
  background: var(--color-aluminium-line);
}

[data-tactical-page] .tk-check-item {
  min-width: 0;
  padding: var(--space-4);
  background: #fff;
}

[data-tactical-page] .tk-check-item h3 { margin-bottom: var(--space-2); font-size: 1.5rem; }
[data-tactical-page] .tk-check-item p { margin-bottom: 0; }

[data-tactical-page] .tk-counterplay {
  width: 66.666%;
  margin-top: var(--space-6);
  padding: var(--space-5);
  border-top: 3px solid var(--color-tangerine-orange);
  border-radius: var(--radius-md);
  background: var(--color-mist-blue);
}

[data-tactical-page] .tk-counterplay > :last-child { margin-bottom: 0; }

[data-tactical-page] .tk-centered-heading {
  width: 58.333%;
  max-width: 48ch;
  margin-inline: auto;
  text-align: center;
}

[data-tactical-page] .tk-team-panel {
  margin-top: var(--space-8);
  padding: var(--space-6);
  border: 1px solid var(--color-graphite);
  border-radius: var(--radius-md);
  background: var(--color-graphite);
  color: var(--color-cloud-white);
}

[data-tactical-page] .tk-fight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}

[data-tactical-page] .tk-fight-card {
  padding: var(--space-5);
  border: 1px solid rgba(255,255,255,.25);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.06);
}

[data-tactical-page] .tk-fight-card h3,
[data-tactical-page] .tk-fight-card p,
[data-tactical-page] .tk-fight-card li { color: inherit; }
[data-tactical-page] .tk-fight-card ul { margin-bottom: 0; }
[data-tactical-page] .tk-fight-card.is-selected { border-color: var(--color-tangerine-orange); box-shadow: inset 0 2px 0 var(--color-tangerine-orange); }

[data-tactical-page] .tk-position-check {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 2px solid var(--color-electric-cyan);
}

[data-tactical-page] .tk-position-check p { margin-bottom: 0; color: #fff; }

[data-tactical-page] .tk-pressure {
  padding-block: 3.5rem;
}

[data-tactical-page] .tk-pressure-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 2.5rem;
  align-items: center;
}

[data-tactical-page] .tk-pressure-image { margin: 0; }
[data-tactical-page] .tk-pressure-image img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--radius-md); clip-path: polygon(0 0, 100% 0, 100% 100%, 1.125rem 100%, 0 calc(100% - 1.125rem)); }
[data-tactical-page] .tk-pressure-image figcaption { margin-bottom: 0; }
[data-tactical-page] .tk-pressure-copy { max-width: 72ch; }

[data-tactical-page] .tk-signal-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  margin-top: var(--space-6);
}

[data-tactical-page] .tk-signal {
  min-width: 0;
  min-height: 5.5rem;
  padding: var(--space-3);
  border: var(--tk-rule);
  border-radius: var(--radius-md);
  background: #fff;
}

[data-tactical-page] .tk-signal strong { display: block; margin-bottom: var(--space-2); font-family: var(--font-heading); font-size: 1.35rem; line-height: 1.1; }
[data-tactical-page] .tk-signal p { margin-bottom: 0; }
[data-tactical-page] .tk-defense { margin-top: var(--space-5); padding: var(--space-5); border-left: 4px solid var(--color-cobalt-blue); background: var(--color-mist-blue); }
[data-tactical-page] .tk-defense > :last-child { margin-bottom: 0; }

[data-tactical-page] .tk-decisions {
  padding-block: 3.5rem;
  border-top: var(--tk-rule);
}

[data-tactical-page] .tk-decision-heading { width: 66.666%; max-width: 56ch; }
[data-tactical-page] .tk-comms-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-3); margin-top: var(--space-6); }
[data-tactical-page] .tk-comm { min-width: 0; min-height: 5.5rem; padding: var(--space-4); border: var(--tk-rule); border-radius: var(--radius-md); background: #fff; }
[data-tactical-page] .tk-comm strong { display: block; margin-bottom: var(--space-2); font-family: var(--font-heading); font-size: 1.3rem; line-height: 1.1; }
[data-tactical-page] .tk-comm p { margin-bottom: 0; }

[data-tactical-page] .tk-pressure-grid-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin-top: var(--space-8); align-items: start; }
[data-tactical-page] .tk-decision-tree,
[data-tactical-page] .tk-pressure-panel { padding: var(--space-5); border: var(--tk-rule); border-radius: var(--radius-md); background: #fff; }
[data-tactical-page] .tk-tree-step { min-width: 0; min-height: 3.25rem; padding: var(--space-3); border-left: 4px solid var(--color-cobalt-blue); background: var(--color-mist-blue); }
[data-tactical-page] .tk-tree-step + .tk-tree-step { margin-top: var(--space-3); }
[data-tactical-page] .tk-tree-step strong { display: block; font-family: var(--font-heading); font-size: 1.35rem; line-height: 1.1; }
[data-tactical-page] .tk-tree-step p { margin: var(--space-2) 0 0; }
[data-tactical-page] .tk-pressure-panel { border: 2px solid var(--color-tangerine-orange); }
[data-tactical-page] .tk-pairs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
[data-tactical-page] .tk-pair { min-width: 0; padding: var(--space-3); background: var(--color-mist-blue); }
[data-tactical-page] .tk-pair strong { display: block; margin-bottom: var(--space-2); }
[data-tactical-page] .tk-pair p { margin-bottom: 0; }

[data-tactical-page] .tk-practice { border-top: var(--tk-rule); }
[data-tactical-page] .tk-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin-top: var(--space-8); }
[data-tactical-page] .tk-stat { padding: var(--space-5); border-bottom: 2px solid var(--color-cobalt-blue); background: #fff; }
[data-tactical-page] .tk-stat strong { display: block; font-family: var(--font-heading); font-size: 3.5rem; line-height: .9; }
[data-tactical-page] .tk-stat span { display: block; margin-top: var(--space-2); font-weight: 700; }

[data-tactical-page] .tk-reflection { margin-top: var(--space-8); padding: var(--space-6); background: var(--color-graphite); color: #fff; }
[data-tactical-page] .tk-reflection h3 { color: #fff; }
[data-tactical-page] .tk-reflection-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
[data-tactical-page] .tk-reflection-grid p { margin-bottom: 0; color: #fff; }

[data-tactical-page] .tk-related { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin-top: var(--space-8); }
[data-tactical-page] .tk-related-card { display: flex; flex-direction: column; align-items: flex-start; min-height: 11rem; padding: var(--space-5); border: var(--tk-rule); border-radius: var(--radius-md); background: #fff; color: var(--color-graphite); text-decoration: none; transition: border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast); }
[data-tactical-page] .tk-related-card > * { margin: 0; }
[data-tactical-page] .tk-related-card > * + * { margin-top: var(--space-3); }
[data-tactical-page] .tk-related-card span { margin-top: auto; color: var(--color-cobalt-blue); font-family: var(--font-heading); font-weight: 700; }

[data-tactical-page] .tk-disclaimer { padding-block: 2.5rem 3.5rem; }
[data-tactical-page] .tk-disclaimer-copy { width: 66.666%; max-width: 70ch; padding-top: var(--space-4); border-top: var(--tk-rule); }
[data-tactical-page] .tk-disclaimer-copy p { margin-bottom: 0; color: var(--color-text-muted); font-size: var(--text-meta); line-height: 1.45; }

@media (max-width: 64rem) {
  [data-tactical-page] .tk-focus-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-tactical-page] .tk-focus-card:last-child { grid-column: 1 / -1; }
  [data-tactical-page] .tk-fight-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-tactical-page] .tk-fight-card:last-child { grid-column: 1 / -1; }
  [data-tactical-page] .tk-checklist { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 61.25rem) {
  [data-tactical-page] .tk-hero-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem; }
  [data-tactical-page] .tk-hero h1 { font-size: 2.5rem; }
  [data-tactical-page] .tk-object-grid,
  [data-tactical-page] .tk-pressure-grid { grid-template-columns: 1fr; gap: var(--space-6); }
  [data-tactical-page] .tk-object-image { order: -1; }
  [data-tactical-page] .tk-pressure-image { order: -1; }
}

@media (max-width: 56.25rem) {
  [data-tactical-page] .tk-lane-grid { grid-template-columns: 1fr; gap: var(--space-6); }
  [data-tactical-page] .tk-map-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-tactical-page] .tk-pressure-grid-two { grid-template-columns: 1fr; }
}

@media (max-width: 52.5rem) {
  [data-tactical-page] .tk-map-layout { grid-template-columns: 1fr; }
}

@media (max-width: 47.5rem) {
  [data-tactical-page] .tk-hero,
  [data-tactical-page] .tk-map-section,
  [data-tactical-page] .tk-teamfight,
  [data-tactical-page] .tk-practice { padding-block: 2.5rem; }
  [data-tactical-page] .tk-learning,
  [data-tactical-page] .tk-lane,
  [data-tactical-page] .tk-objectives,
  [data-tactical-page] .tk-pressure,
  [data-tactical-page] .tk-decisions { padding-block: 2.5rem; }
  [data-tactical-page] .tk-hero-grid,
  [data-tactical-page] .tk-object-grid,
  [data-tactical-page] .tk-pressure-grid { grid-template-columns: 1fr; }
  [data-tactical-page] .tk-hero-copy { order: 0; }
  [data-tactical-page] .tk-hero-visual { order: 1; }
  [data-tactical-page] .tk-hero h1 { max-width: 14ch; font-size: clamp(2rem, 9vw, 2.5rem); }
  [data-tactical-page] .tk-hero-dek { max-width: 34ch; }
  [data-tactical-page] .tk-quick-links,
  [data-tactical-page] .tk-focus-grid,
  [data-tactical-page] .tk-fight-grid,
  [data-tactical-page] .tk-position-check,
  [data-tactical-page] .tk-signal-list,
  [data-tactical-page] .tk-comms-grid,
  [data-tactical-page] .tk-stats,
  [data-tactical-page] .tk-reflection-grid,
  [data-tactical-page] .tk-related { grid-template-columns: 1fr; }
  [data-tactical-page] .tk-focus-card:last-child,
  [data-tactical-page] .tk-fight-card:last-child { grid-column: auto; }
  [data-tactical-page] .tk-heading-copy,
  [data-tactical-page] .tk-map-intro,
  [data-tactical-page] .tk-centered-heading,
  [data-tactical-page] .tk-decision-heading,
  [data-tactical-page] .tk-disclaimer-copy,
  [data-tactical-page] .tk-counterplay { width: 100%; }
  [data-tactical-page] .tk-centered-heading { max-width: 36ch; }
  [data-tactical-page] .tk-map-note { display: block; }
  [data-tactical-page] .tk-map-scroll { position: relative; }
  [data-tactical-page] .tk-map-scroll::after { position: absolute; top: 0; right: 0; bottom: 0; width: 2rem; background: linear-gradient(90deg, transparent, rgba(0,207,232,.28)); content: ""; pointer-events: none; }
  [data-tactical-page] .tk-checklist { grid-template-columns: 1fr; }
  [data-tactical-page] .tk-check-item + .tk-check-item { border-top: 1px solid var(--color-aluminium-line); }
  [data-tactical-page] .tk-decision-columns,
  [data-tactical-page] .tk-pairs { grid-template-columns: 1fr; }
  [data-tactical-page] .tk-team-panel,
  [data-tactical-page] .tk-reflection { padding: var(--space-4); }
  [data-tactical-page] .tk-pressure-image { order: 0; }
  [data-tactical-page] .tk-pressure-copy { order: 1; }
  [data-tactical-page] .tk-stat { display: grid; grid-template-columns: 5rem minmax(0, 1fr); align-items: center; gap: var(--space-3); }
  [data-tactical-page] .tk-stat span { margin-top: 0; }
}

@media (prefers-reduced-motion: reduce) {
  [data-tactical-page] .tk-quick-link:hover,
  [data-tactical-page] .tk-focus-card:hover,
  [data-tactical-page] .tk-step:hover,
  [data-tactical-page] .tk-related-card:hover { transform: none; }
}
