/* Tablet: allow cards to size down but keep multi-column feel where it fits */
@media (max-width: 900px){
  .dash-wrap{ padding:0 10px 32px; }
  .node-card, .node-add-card{ width:calc(50% - 7px) !important; max-width:340px; }
}

/* Phone: stack every card full-width; height follows content instead of a fixed px value */
@media (max-width: 600px){
  .dash-topbar{ flex-wrap:wrap; gap:10px; }
  .node-card, .node-add-card{ width:100% !important; max-width:100% !important; height:auto !important; min-height:150px; }
  .node-resize-handle{ display:none; }
  .node-card.fullscreen{ top:2vh; left:3vw; width:94vw; height:96vh; }
}
