.pgr-wrap{max-width:900px;margin:auto}.pgr-card,.pgr-checkin-admin{background:#fff;padding:32px;border-radius:16px;box-shadow:0 8px 30px rgba(0,0,0,.08);font-family:inherit}.pgr-card h2,.pgr-checkin-admin h2{margin-top:0;color:#39401f}.pgr-event{color:#777}.pgr-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pgr-full{grid-column:1/-1}.pgr-field label,fieldset legend{font-weight:600;display:block;margin-bottom:7px;color:#303525}.pgr-field label span,legend span{color:#a77d15}.pgr-field input,.pgr-field select,.pgr-checkin-manual input{width:100%;box-sizing:border-box;min-height:48px;padding:12px;border:1px solid #d5d8ca;border-radius:8px;font:inherit}fieldset{border:1px solid #ddd;border-radius:10px;padding:18px}fieldset p{line-height:1.55;color:#555}.pgr-radio{margin-right:22px}.pgr-btn{margin-top:20px;background:#6f783b;color:#fff;border:0;border-radius:8px;padding:13px 26px;font-weight:700;cursor:pointer}.pgr-btn:disabled{opacity:.6}.pgr-success{margin-top:18px;padding:20px;border-radius:10px;background:#eef5e7;color:#3f5c25}.pgr-error{margin-top:18px;padding:20px;border-radius:10px;background:#fff0ed;color:#9a3529}.pgr-qr{width:180px;height:180px;margin-top:14px}.pgr-rid{display:inline-block;margin-top:8px;font-size:20px;font-weight:700;letter-spacing:.5px}.pgr-checkin-admin{max-width:720px}.pgr-checkin-admin #pgr-scanner{max-width:520px;margin:15px auto;text-align:center}.pgr-checkin-admin video{width:100%;max-height:420px;border-radius:12px;background:#111}.pgr-checkin-manual{display:flex;gap:10px;align-items:stretch}.pgr-checkin-manual .pgr-btn{margin-top:0;white-space:nowrap}.pgr-stats{display:flex;gap:18px}.pgr-stats div{padding:20px;border:1px solid #ddd;border-radius:10px;background:#fff}.pgr-stats b{display:block;font-size:30px}@media(max-width:700px){.pgr-grid{grid-template-columns:1fr}.pgr-full{grid-column:auto}.pgr-card,.pgr-checkin-admin{padding:20px}.pgr-checkin-manual{display:block}.pgr-checkin-manual .pgr-btn{width:100%;margin-top:10px}}
.pgr-qr-fallback{display:none;margin-top:10px;font-size:13px;color:#66704a}.pgr-rid{display:inline-block;margin-top:8px;font-size:20px;font-weight:700;letter-spacing:.5px}

/* v2.4 — isolated Data Privacy Agreement controls.
   The !important rules intentionally override theme/Spectra form styles. */
.pgr-card .pgr-privacy-options {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 32px !important;
    width: 100% !important;
    margin-top: 12px !important;
}
.pgr-card .pgr-privacy-option {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: auto !important;
    min-width: 70px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 20px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
}
.pgr-card .pgr-privacy-option input[type="radio"] {
    appearance: auto !important;
    -webkit-appearance: radio !important;
    display: inline-block !important;
    position: static !important;
    float: none !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 18px !important;
    opacity: 1 !important;
    visibility: visible !important;
    accent-color: #6f783b !important;
}
.pgr-card .pgr-privacy-option span {
    display: inline-block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 20px !important;
}

/* v2.4 — no honeypot field is rendered. */
.pgr-hp { display: none !important; }

/* v2.4.1 — camera scanner */
#pgr-scanner{width:100%;max-width:560px;margin:18px auto}
#pgr-scanner video{width:100%!important;height:auto!important;border-radius:12px!important}
#pgr-scanner__scan_region{border-radius:12px;overflow:hidden}
#pgr-scanner__dashboard{padding-top:8px}
.pgr-scanner-status{text-align:center;font-size:14px;color:#66704a;margin:10px 0}
