/* Responsive placement for solution checks and stable cycle geometry. */

/* Section 02 desktop: each check sits on the outer edge of its column. */
@media (min-width:1101px) and (hover:hover) and (pointer:fine){
  #entregas .output-node[data-side="left"]>.solution-badge{
    left:16px!important;
    right:auto!important;
  }

  #entregas .output-node[data-side="right"]>.solution-badge{
    left:auto!important;
    right:16px!important;
  }

  #entregas .output-node[data-side="left"] .ic{
    margin-right:0!important;
  }

  /* Section 05 desktop: three cards above, two centered below. */
  #ciclo .cycle-circuit{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:18px!important;
    align-items:stretch;
    padding:16px 0 8px!important;
  }

  #ciclo .cycle-circuit::before{
    display:none!important;
  }

  #ciclo .cycle-node{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:188px;
    box-sizing:border-box!important;
    padding:18px 52px 20px 18px!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* Stable selectors: SVG circuit overlays do not affect card placement. */
  #ciclo .cycle-node[data-cycle-order="1"]{grid-column:1 / span 2!important;grid-row:1!important}
  #ciclo .cycle-node[data-cycle-order="2"]{grid-column:3 / span 2!important;grid-row:1!important}
  #ciclo .cycle-node[data-cycle-order="3"]{grid-column:5 / span 2!important;grid-row:1!important}
  #ciclo .cycle-node[data-cycle-order="4"]{grid-column:2 / span 2!important;grid-row:2!important}
  #ciclo .cycle-node[data-cycle-order="5"]{grid-column:4 / span 2!important;grid-row:2!important}

  #ciclo .cycle-node>.solution-badge{
    top:16px;
    right:16px;
    left:auto!important;
  }

  #ciclo .cycle-node-marker{
    margin-right:1px!important;
  }

  #ciclo .cycle-node-port{
    display:none;
  }

  #ciclo .cycle-node h3,
  #ciclo .cycle-node>p{
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    white-space:normal!important;
  }

  #ciclo .cycle-node h3{
    font-size:1.08rem;
  }

  #ciclo .cycle-node>p{
    font-size:.96rem;
    line-height:1.62;
  }
}

/* Mobile and coarse pointers: one column means one consistent right edge. */
@media (max-width:1100px), (pointer:coarse), (hover:none){
  #entregas .output-node>.solution-badge,
  #ciclo .cycle-node>.solution-badge{
    left:auto!important;
    right:14px!important;
  }

  #ciclo .cycle-node{
    grid-column:auto!important;
    grid-row:auto!important;
  }
}