/* Existing floating launcher placement is preserved. No header styles. */
.karatemind .karatemind__launcher--ai {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 58px;
  min-height: 58px;
  padding: 5px;
  gap: 0;
  text-decoration: none;
  cursor: pointer;
  touch-action: manipulation;
  border: 1px solid #7b99bf;
  border-radius: 18px;
  color: #f7fbff;
  background: radial-gradient(ellipse at 15% 0, #3562a3, transparent 75%), linear-gradient(145deg, #153c70, #101f3b);
  box-shadow: inset 0 1px 0 #ffffff24, 0 4px 12px #07162d24;
  transition: border-color 180ms ease, background-color 180ms ease;
  -webkit-tap-highlight-color: transparent;
}
/* Public light-theme SVG rules are deliberately overridden only for this mark. */
html body .karatemind[data-karatemind-root] .karatemind__launcher--ai .karatemind__ai-mark {
  flex: 0 0 56px;
  width: 56px;
  height: 40px;
  max-width: 56px;
  max-height: 40px;
  fill: none !important;
  stroke: #c6dafa !important;
  color: #f7fbff !important;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: none !important;
}
html body .karatemind[data-karatemind-root] .karatemind__launcher--ai .karatemind__ai-mark :is(path, rect, circle) {
  fill: none !important;
  stroke: #c6dafa !important;
}
html body .karatemind[data-karatemind-root] .karatemind__launcher--ai .karatemind__ai-mark .karatemind__ai-letters {
  stroke: #ffffff !important;
  stroke-width: 2;
}
html body .karatemind[data-karatemind-root] .karatemind__launcher--ai .karatemind__ai-nodes circle {
  fill: #e9c77e !important;
  stroke: none !important;
}
/* The highlight travels around the frame; AKF lettering stays still. */
html body .karatemind[data-karatemind-root] .karatemind__launcher--ai .karatemind__ai-mark .karatemind__ai-core {
  stroke: #e9c77e !important;
  stroke-width: 2;
  stroke-dasharray: 32 104;
  animation: akfLauncherOrbit 2.6s linear infinite;
}
.karatemind__ai-nodes circle {
  animation: akfLauncherNodeTravel 1.6s ease-in-out infinite alternate;
}
.karatemind__ai-nodes circle:nth-child(1) { --akf-node-x: 5px; --akf-node-y: 0px; }
.karatemind__ai-nodes circle:nth-child(2) { --akf-node-x: 0px; --akf-node-y: 6px; animation-delay: -.4s; }
.karatemind__ai-nodes circle:nth-child(3) { --akf-node-x: -5px; --akf-node-y: 0px; animation-delay: -.8s; }
.karatemind__ai-nodes circle:nth-child(4) { --akf-node-x: 0px; --akf-node-y: -6px; animation-delay: -1.2s; }
.karatemind .karatemind__launcher--ai:hover {
  border-color: #e9c77e;
  transform: none;
  outline: none;
}
.karatemind .karatemind__launcher--ai:focus-visible {
  outline: 3px solid #e9c77e;
  outline-offset: 3px;
  border-color: #ffffff;
  transform: none;
}
.karatemind .karatemind__launcher--ai:active { background: #102748; }
html[data-theme="light"] .karatemind .karatemind__launcher--ai:focus-visible {
  outline-color: #14539b;
}
@keyframes akfLauncherOrbit { to { stroke-dashoffset: -136; } }
@keyframes akfLauncherNodeTravel {
  from { transform: translate(0, 0); }
  to { transform: translate(var(--akf-node-x, 0px), var(--akf-node-y, 0px)); }
}
@media (max-width: 600px) {
  .karatemind .karatemind__launcher--ai {
    width: 72px;
    height: 54px;
    min-height: 54px;
    border-radius: 16px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .karatemind .karatemind__launcher--ai,
  .karatemind__ai-nodes,
  .karatemind__ai-nodes circle,
  .karatemind__ai-core { animation: none !important; transition: none !important; }
  .karatemind .karatemind__ai-core { stroke-dasharray: none !important; }
}
@media (forced-colors: active) {
  .karatemind .karatemind__launcher--ai { forced-color-adjust: none; }
}
