/* Traffic controller pay calculator: shift cards (mobile first) */
.pc-stack { display: grid; gap: 12px; min-width: 0; }
.pc-shifts { display: grid; gap: 10px; }
.pc-shift { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px 8px; padding: 30px 12px 10px; border: 1.5px solid var(--concrete-2); border-radius: 12px; background: var(--concrete, #f3f4f6); min-width: 0; }
.pc-shift > * { min-width: 0; }
.pc-shift label { font-size: .78rem; gap: 3px; }
.pc-shift input[type="date"], .pc-shift input[type="time"], .pc-shift input[type="number"] { height: 40px; padding: 0 8px; font-size: .9rem; }
.pc-shift .pc-date { grid-column: span 6; }
.pc-shift label:nth-of-type(2), .pc-shift label:nth-of-type(3), .pc-shift label:nth-of-type(4), .pc-shift label:nth-of-type(5) { grid-column: span 3; }
.pc-shift .pc-tick { grid-column: span 3; align-items: center; font-size: .82rem; }
.pc-n { position: absolute; top: 7px; left: 12px; font-size: .74rem; font-weight: 800; color: var(--steel); letter-spacing: .04em; }
.pc-del { position: absolute; top: 4px; right: 6px; width: 30px; height: 26px; border-radius: 8px; border: 1px solid var(--concrete-2); background: var(--white); cursor: pointer; font-size: 1.05rem; line-height: 1; color: var(--steel); }
.pc-del:hover { color: var(--red); border-color: var(--red); }
.pc-day { grid-column: 1 / -1; color: var(--steel); font-size: .78rem; font-weight: 600; min-height: 1em; }
.pc-day b { color: #b45309; }
@media (min-width: 600px) {
  .pc-shift .pc-date { grid-column: span 2; }
  .pc-shift label:nth-of-type(2), .pc-shift label:nth-of-type(3) { grid-column: span 2; }
  .pc-shift label:nth-of-type(4), .pc-shift label:nth-of-type(5) { grid-column: span 2; }
  .pc-shift .pc-tick { grid-column: span 1; }
}
@media (min-width: 861px) and (max-width: 1180px) {
  .pc-shift .pc-date { grid-column: span 6; }
  .pc-shift label:nth-of-type(2), .pc-shift label:nth-of-type(3), .pc-shift label:nth-of-type(4), .pc-shift label:nth-of-type(5) { grid-column: span 3; }
  .pc-shift .pc-tick { grid-column: span 3; }
}
/* tables in the dark result panel: keep money columns on one line */
#tool-out .out-table td { white-space: nowrap; }
#tool-out .out-table td:first-child { white-space: normal; }
