/* The guide reserves space for an actual row, never a clipped heading. */
#productTour .tour-card {
  box-sizing: border-box;
  top: var(--tour-card-top, 12px) !important;
  left: var(--tour-card-left, 12px) !important;
  right: auto !important;
  bottom: auto !important;
  width: var(--tour-card-width, 410px) !important;
  max-height: var(--tour-card-max-height, calc(100dvh - 24px)) !important;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 18px;
}
#productTour .tour-card-head, #productTour .tour-footer { gap: 8px; }
#productTour .tour-copy { padding: 12px 0 16px; }
#productTour .tour-copy p { font-size: 15px; line-height: 1.42; }
#productTour .tour-copy h2 { font-size: 20px; line-height: 1.23; }
#productTour .tour-back, #productTour .tour-next, #productTour .tour-skip { min-height: 42px; font-size: 13px; }
/* Match the spotlight's inner curve (18px radius minus 8px inset).
   Rows often have no radius of their own; clip their children as well. */
#productTour .tour-target-clone {
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 10px !important;
  overflow: hidden !important;
}
#productTour .tour-focus { pointer-events: none; transition: none; }
#productTour .missing-row.tour-target-clone { padding-inline: 10px; }
#productTour .tour-card[data-tour-fallback] .tour-kicker::after { content: ' · пояснение'; color: var(--muted); }
@media (max-width: 650px) {
  #productTour .tour-target-clone { border-radius: 8px !important; }
  /* A short empty inbox must still be scrollable above the guide card. */
  body.tour-active #messages { padding-bottom: 55dvh; }
  #productTour .tour-card { padding: 13px 14px; border-radius: 15px; }
  #productTour .tour-copy { padding: 6px 0 11px; }
  #productTour .tour-copy h2 { font-size: 19px; }
  #productTour .tour-copy p { margin-top: 7px; font-size: 14px; line-height: 1.42; }
  #productTour .tour-kicker { margin-bottom: 4px; font-size: 12px; }
  #productTour .tour-dots { gap: 4px; }
  #productTour .tour-dot.active { width: 13px; }
  #productTour .tour-actions { gap: 3px; }
  #productTour .tour-next { padding-inline: 12px; }
  body.tour-active #add .drop { min-height: 158px; padding: 14px; gap: 4px; }
  body.tour-active #add .upload-icon { width: 32px; height: 32px; margin-bottom: 2px; }
  body.tour-active #add .drop small { margin-top: 2px; }
}
@media (prefers-reduced-motion: reduce) {
  #productTour *, #productTour *::before, #productTour *::after { animation: none !important; transition: none !important; }
}
