#pc-form, .pc-card { border: 1px solid var(--line); border-radius: var(--radius-panel); padding: 1.25rem; margin: 1.5rem 0; background: var(--color-surface); }
.pc-fields, .pc-diagrams { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
#pc-form label { display: block; margin: .75rem 0; }
#pc-form input, #pc-form select { display: block; width: 100%; box-sizing: border-box; }
.pc-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.5rem 0; }
#pc-result p, #pc-result a { overflow-wrap: anywhere; }
.pc-footprint-svg { width: 100%; max-height: 28rem; color: var(--color-text); }
.pc-runoff { fill: var(--color-surface); stroke: var(--line); stroke-width: .4; }
.pc-court-lines { fill: none; stroke: var(--color-link); stroke-width: .4; }
.pc-footprint-svg text { fill: currentColor; font-size: 2px; }
[hidden] { display: none !important; }
@media (max-width: 48rem) { .pc-fields, .pc-diagrams { grid-template-columns: 1fr; } }
@media print {
  header, footer, #pc-form, #pc-status, #faq, #agent, #more-tools, .ad-slot, .pc-actions, .skip-link { display: none !important; }
  .pc-card, .pc-diagrams { break-inside: avoid; }
}
