.pgm { max-width: 1280px; }
.pgm-grid { display:grid; grid-template-columns:minmax(300px, .8fr) minmax(450px, 1.2fr); gap:20px; align-items:start; }
.pgm-card { background:#fff; border:1px solid #dcdcde; border-radius:5px; padding:20px; }
.pgm label { display:block; font-weight:600; }.pgm input,.pgm select { box-sizing:border-box; display:block; width:100%; margin-top:6px; }.pgm-two { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.pgm-inline { display:inline-flex; gap:7px; align-items:center; margin:0; }.pgm-inline select { width:auto; margin:0; }.pgm-history { margin-top:18px; }.pgm-badge { display:inline-block; border-radius:12px; padding:3px 8px; font-size:12px; background:#f0f0f1; }.pgm-badge.paid { color:#067a32; background:#d7f5df; }.pgm-badge.overdue,.pgm-badge.cancelled { color:#a00; background:#fcdddd; }.pgm-badge.awaiting_proof { color:#8a5a00; background:#fff0c2; }
.pgm-client { box-sizing:border-box; max-width:1100px; margin:28px auto; padding:28px; overflow-x:auto; background:#fff; border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 8px 28px rgba(15,23,42,.08); color:#1f2937; }.pgm-client h2 { margin:0 0 22px; padding-bottom:16px; border-bottom:1px solid #e5e7eb; font-size:22px; line-height:1.25; }.pgm-client table { width:100%; min-width:720px; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid #e5e7eb; border-radius:8px; }.pgm-client th { background:#f8fafc; color:#475569; font-size:12px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; }.pgm-client th,.pgm-client td { border-bottom:1px solid #e5e7eb; text-align:left; padding:14px 16px; vertical-align:middle; }.pgm-client tbody tr:last-child td { border-bottom:0; }.pgm-client tbody tr:hover { background:#f8fafc; }.pgm-client small { color:#64748b; }.pgm-button,.pgm-proof button { display:inline-block; background:#2271b1; color:#fff!important; border:0; border-radius:5px; padding:8px 11px; text-decoration:none; cursor:pointer; font-size:13px; }.pgm-button:hover,.pgm-proof button:hover { background:#135e96; }.pgm-proof { margin-top:8px; }.pgm-proof input { max-width:190px; margin-bottom:6px; font-size:12px; }.pgm-alert { padding:12px 14px; border-left:4px solid #d63638; border-radius:4px; background:#fcf0f1; }
@media(max-width:782px){.pgm-grid,.pgm-two { grid-template-columns:1fr; }.pgm-client th,.pgm-client td { min-width:105px; }}
