The input is high-impedance and as such hardly draws any current. But let's, for sake of argument, pretend there flows a (rather large) current of 1\$\mu\$A. This current will flow through the 10k\$\Omega\$ pull-up resistor causing a 10mV (1\$\mu\$A \$\times\$ 10k\$\Omega\$) voltage drop across it. So in this case the voltage on the input pin will be \$V_{CC}\$ - 10mV, probably 5V - 10mV = 4.99V. That will be still recognized as a high level, so no problems here.
The 10k\$\Omega\$ is a typical value for pull-up resistors for this reason: even if there's a small leakage current the voltage drop is negligible. Don't be tempted to increase it to 1M\$\Omega\$, though it will decrease the current when the switch is closed. At 1\$\mu\$A leakage current the voltage drop will be 1\$\mu\$A \$\times\$ 1M\$\Omega\$ = 1V, and then the 5V will drop to 4V. For a 5V supply this will still be OK, but for a 3.3V supply the resulting 2.3V may be too low to be always seen as a high level.
For the pull-down the story is about the same. There doesn't flow any current in the input; you can't say that it would be connected to ground (in which case closing the switch would indeed cause a short-circuit). As such the input takes the voltage you apply to it. If the switch is closed this is \$V_{CC}\$. If the switch is open it's ground (through the pull-down resistor). If there's no current flowing (ideal world) then there's no voltage drop across the resistor either, and the input will be at \$GND\$ level. In a real world situation it may be a few mV.
The amount of current the Arduino will draw is based on its circuitry and your added components, not the power source. (Although if the power source cannot provide at least that amount, it may not operate correctly.) In other words, the Arduino draws whatever current it needs based on the supplied voltage.
(In theory, to maintain equal power, it would draw more current as voltage drops. In reality, however, the current is limited by what the (dying) battery can provide.)
In a perfect world, when the battery dips below \$V_{min}\$ for the device (7V for the Arduino Mini*1), it would stop working immediately. Of course, there are gray areas, so you may find it works rather below the stated specifications.
To answer the question, nothing is 100% "safe." Some devices may not be as tolerant of low-voltage scenarios*2. Generally speaking, however, the Arduino Mini should survive such low power issues. Consider the multitude of battery-powered devices in your home: remote controls, MP3 players, mobile phones... When the batteries start to run out, these devices don't suffer irreparable damage, they just stop working until you recharge them or find some fresh batteries.
Note that insufficient power may alter timing, sensor accuracy, and so forth, but if the device is operating "correctly" to your definition, then it should be fine.
*1:The Arduino Mini has a LP2985 5V linear regulator on board and it appears to have a low dropout of ~300mV so in theory the board would continue to get 5V even when the batteries are approaching <5.3V; that's at its max current of 150mA, dropout is lower at lower currents.
*2:Power supplies, for example, start to "de-rate" when the input power is insufficient to maintain a load. They might try to compensate or go into a shutdown mode, but lacking such protections, they can self-destruct.
Best Answer
The resistors shouldn't be necessary. Literally hundreds of millions of devices work perfectly with ICs directly connected. I blame the power supply.
Pentium100 makes an important point: especially digital ICs should be properly decoupled. If you don't, switching may cause negative spikes on the power supply, which may cause false triggers in flip-flops. Use 100nF capacitors as close as possible between Vdd and ground.
Then this fishy ground. You shouldn't have two grounds! Ground of the STK500 and your circuit should be connected, why aren't they?