/* HYPNO.GURU v15 final request correction.
   Desktop request = compact two-column task surface with cursor restored.
   Touch request = cursor hidden only because there is no pointer hotspot. */

/* v14 hid the cursor for every request page. Restore it for a real mouse/trackpad. */
@media (pointer: fine) and (hover: hover) {
  body:has(.request-experience),
  body:has(.request-experience) * {
    cursor: none !important;
  }

  body:has(.request-experience) .custom-cursor {
    display: block !important;
    visibility: visible !important;
    opacity: 0.86 !important;
    pointer-events: none !important;
  }
}

/* On touch devices there is no meaningful custom cursor. */
@media (hover: none), (pointer: coarse) {
  body:has(.request-experience) .custom-cursor,
  body:has(.request-experience) .custom-cursor * {
    display: none !important;
    pointer-events: none !important;
  }

  body:has(.request-experience),
  body:has(.request-experience) * {
    cursor: auto !important;
  }
}

/* The orbital illustration is not part of the form task and was creating the large
   empty-looking lower half of the desktop screenshot. */
.request-experience .request-visual {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Desktop: exactly two columns, no third decorative column, no artificial viewport
   min-height. The form card and its action define the section height. */
@media (min-width: 761px) {
  .request-experience {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 36px 0 48px !important;
    overflow: visible !important;
  }

  .request-experience .request-shell {
    display: grid !important;
    grid-template-columns: minmax(300px, 0.82fr) minmax(540px, 1.18fr) !important;
    grid-template-rows: auto !important;
    align-items: start !important;
    column-gap: clamp(36px, 5vw, 80px) !important;
    row-gap: 0 !important;
  }

  .request-experience .request-intro {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }

  .request-experience .request-stage {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    padding-bottom: 0 !important;
  }

  .request-experience .question-card,
  .request-experience .review-card,
  .request-experience .prepared-panel {
    max-height: none !important;
    overflow: visible !important;
  }
}

/* The request route is an immediate task: no page/card/press/hover animation at any
   breakpoint. Cursor movement itself is handled by the direct v13 pointer bridge. */
body:has(.request-experience) .page-view,
body:has(.request-experience) .page-main,
body:has(.request-experience) .request-experience,
body:has(.request-experience) .request-experience *,
body:has(.request-experience) .request-experience::before,
body:has(.request-experience) .request-experience::after {
  animation: none !important;
  transition: none !important;
}

body:has(.request-experience) .request-experience .action-link:hover svg,
body:has(.request-experience) .request-experience .action-link:active,
body:has(.request-experience) .request-experience button:active,
body:has(.request-experience) .request-experience .is-pressed {
  animation: none !important;
  transform: none !important;
  filter: none !important;
}
