/* regional creature dept :: the bits that actually fax now. still circa 2003. */

/* honeypot: off-screen, not display:none (some bots skip hidden fields) */
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* the powers box is still tiny, but it's allowed to grow now */
.form textarea.tiny { resize: both; min-width: 11em; max-width: 100%; }
.form input[type=file] { font-size: 13px; max-width: 100%; }
.form.closed { opacity: 0.6; }
.form.closed td.l { text-decoration: line-through; text-decoration-color: #cc0000; }
.pub-note {
  margin: 4px 0 0; padding: 4px 6px; font-size: 12px;
  background: var(--note); border: 1px dashed #cc9;
}
.ts-box { min-height: 65px; }

/* fig. 1 becomes the preview */
.pics img.preview { max-height: 420px; width: auto; max-width: 100%; }

/* the slip the fax spits out */
.slip {
  border: 2px solid var(--ink); padding: 8px 10px; margin: 10px 0;
  font-family: "Courier New", Courier, monospace; font-size: 14px;
  background: #fff;
}
.slip.good { border-style: double; border-width: 4px; background: #f4fff0; }
.slip.bad { border-color: var(--hot); background: #fff0f0; font-family: Verdana, sans-serif; font-size: 13px; }
.slip .muted { font-size: 12px; }
.slip .again { margin-top: 8px; font-size: 13px; }

/* ---------- the temp roster ---------- */
.roster-intro { font-size: 14px; margin: 6px 0 10px; }
.roster {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr));
  gap: 12px;
  margin: 10px 0;
}
.pcard {
  border: 1px solid var(--boxline);
  background: #fffff4;
  background-image: linear-gradient(transparent 23px, #dfe8f5 24px);
  background-size: 100% 24px;
  padding: 8px 10px 6px;
  box-shadow: 2px 2px 0 #ddd;
  min-width: 0;
}
.pcard:nth-child(3n+1) { transform: rotate(-0.4deg); }
.pcard:nth-child(3n+2) { transform: rotate(0.3deg); }
.pcard.hit { outline: 3px dashed var(--hot); outline-offset: 2px; }
.pc-pic { background: #fff; border: 1px solid var(--boxline); margin-bottom: 6px; }
.pc-pic img { display: block; width: 100%; height: 200px; object-fit: contain; background: #fff; }
.pc-pic.blank img { opacity: 0.55; }
.pc-name { font-size: 17px; margin: 2px 0 0; overflow-wrap: anywhere; }
.pc-sp { margin: 0 0 4px; font-style: italic; font-size: 14px; color: var(--muted); }
.pc-dl { margin: 4px 0; font-size: 13px; }
.pc-dl dt { font: bold 11px Verdana, sans-serif; text-transform: uppercase; color: var(--muted); margin-top: 4px; }
.pc-dl dd { margin: 0 0 2px; white-space: pre-line; overflow-wrap: anywhere; }
.pcard .pid { margin-top: 6px; font-family: Verdana, sans-serif; font-size: 11px; }
.roster-empty { border: 1px dashed var(--rule); padding: 14px; text-align: center; font-size: 14px; background: #fafafa; }
.roster-empty img { display: block; max-width: 260px; margin: 0 auto 8px; opacity: 0.6; }
.more { text-align: center; margin: 8px 0 14px; }
.more button { font-size: 14px; }

@media (prefers-reduced-motion: reduce) { .pcard { transform: none !important; } }
@media (max-width: 520px) {
  .pcard { transform: none !important; }
  .pc-pic img { height: auto; max-height: 320px; }
}
