/* PPG Fridays — public reservation + cancel forms (same look as the original
   Elementor forms), presenter form, attendee list and staff check-in. */
.ppg-rv-form{
  --ppg-accent:#1a4d8f;
  --ppg-accent-hover:#143a6b;
  --ppg-border:#d4d9e0;
  --ppg-text:#1f2933;
  --ppg-muted:#5c6b7a;
  --ppg-error:#b3261e;
  --ppg-radius:6px;
  max-width:640px;margin:0 auto;color:var(--ppg-text);font-family:inherit;font-size:16px;line-height:1.5;text-align:left;
}
.ppg-rv-form *{box-sizing:border-box}
.ppg-rv-form [hidden]{display:none!important}
.ppg-rv-form .ppg-intro{margin:0 0 18px;color:var(--ppg-muted);font-size:15px}
.ppg-rv-form .ppg-section{margin:26px 0 12px;font-size:18px;font-weight:700;color:var(--ppg-text);border-bottom:1px solid var(--ppg-border);padding-bottom:6px}
.ppg-rv-form .ppg-row{margin-bottom:18px}
.ppg-rv-form .ppg-row-split{display:flex;flex-wrap:wrap;gap:18px}
.ppg-rv-form .ppg-row-split>.ppg-row{flex:1 1 220px;margin-bottom:0}
.ppg-rv-form label{display:block;margin-bottom:6px;font-weight:600;font-size:14px;letter-spacing:.01em}
.ppg-rv-form .ppg-req{color:var(--ppg-error);margin-left:2px}
.ppg-rv-form .ppg-help{margin:5px 0 0;font-size:13px;color:var(--ppg-muted)}
.ppg-rv-form input[type=text],.ppg-rv-form input[type=email],.ppg-rv-form input[type=tel],.ppg-rv-form input[type=url],.ppg-rv-form select,.ppg-rv-form textarea{
  width:100%;padding:11px 12px;border:1px solid var(--ppg-border);border-radius:var(--ppg-radius);background:#fff;color:var(--ppg-text);font-family:inherit;font-size:16px;line-height:1.4;transition:border-color .15s ease,box-shadow .15s ease}
.ppg-rv-form textarea{min-height:88px;resize:vertical}
.ppg-rv-form input:focus,.ppg-rv-form select:focus,.ppg-rv-form textarea:focus{outline:none;border-color:var(--ppg-accent);box-shadow:0 0 0 3px rgba(26,77,143,.15)}
.ppg-rv-form .ppg-check{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--ppg-border);border-radius:var(--ppg-radius);background:#f7f9fb;cursor:pointer}
.ppg-rv-form .ppg-check-light{background:#fff}
.ppg-rv-form .ppg-check input{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--ppg-accent);cursor:pointer}
.ppg-rv-form .ppg-check label{margin:0;cursor:pointer}
.ppg-rv-form .ppg-check .ppg-hint{display:block;margin-top:2px;font-weight:400;font-size:13px;color:var(--ppg-muted)}
.ppg-rv-form button[type=submit]{width:100%;padding:14px 20px;border:none;border-radius:var(--ppg-radius);background:var(--ppg-accent);color:#fff;font-family:inherit;font-size:16px;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:background .15s ease}
.ppg-rv-form button[type=submit]:hover:not(:disabled){background:var(--ppg-accent-hover)}
.ppg-rv-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}
.ppg-rv-form .ppg-footnote{margin:14px 0 0;font-size:13px;color:var(--ppg-muted);text-align:center}
.ppg-rv-form .ppg-footnote a{color:var(--ppg-accent)}
.ppg-rv-form .ppg-error{margin-bottom:18px;padding:12px 14px;border:1px solid var(--ppg-error);border-left-width:4px;border-radius:var(--ppg-radius);background:#fdf3f2;color:var(--ppg-error);font-size:14px}
.ppg-rv-form .ppg-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ppg-confirmed,.ppg-cancel-confirmed,.ppg-presenter-confirmed{max-width:640px;margin:0 auto;padding:32px 24px;border:1px solid #d4d9e0;border-radius:8px;background:#f5faf6;text-align:center}
.ppg-confirmed h3,.ppg-presenter-confirmed h3{margin:0 0 10px;color:#1e6b3a;font-size:22px}
.ppg-confirmed-wait{background:#fff8e8}
.ppg-confirmed-wait h3{color:#8a5a00}
.ppg-cancel-confirmed{background:#f7f9fb}
.ppg-cancel-confirmed h3{margin:0 0 10px;color:#1a4d8f;font-size:22px}
.ppg-confirmed p,.ppg-cancel-confirmed p,.ppg-presenter-confirmed p{margin:0 0 8px;color:#3c4a56}
.ppg-confirmed a{color:#1a4d8f;font-weight:600}
@media (max-width:480px){
  .ppg-rv-form .ppg-row-split{gap:0}
  .ppg-rv-form .ppg-row-split>.ppg-row{flex-basis:100%;margin-bottom:18px}
}

/* Who's coming (members) */
.ppg-dash .ppg-coming h3{font-family:var(--ppg-head);color:var(--ppg-primary);font-size:1.15rem;margin:0 0 4px}
.ppg-dash .ppg-coming-list{list-style:none;margin:10px 0 0;padding:0;max-height:420px;overflow:auto}
.ppg-dash .ppg-coming-list li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--ppg-line)}
.ppg-dash .ppg-coming-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;background:#e9e5dc;display:grid;place-items:center;flex:none;font-family:var(--ppg-head);color:var(--ppg-primary);font-size:.9rem}
.ppg-dash .ppg-coming-avatar img{width:100%;height:100%;object-fit:cover}
.ppg-dash .ppg-coming-who{flex:1;min-width:0;display:flex;flex-direction:column}
.ppg-dash .ppg-coming-who a{text-decoration:none}
.ppg-dash .ppg-coming-who small{color:var(--ppg-muted);font-size:.82rem}
.ppg-dash .ppg-coming-tag{display:inline-block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 7px;border-radius:999px;background:#e8eef6;color:var(--ppg-primary);margin-left:4px}
.ppg-dash .ppg-coming-guest{background:#f1efe9;color:#6b6250}
.ppg-dash .ppg-tag-new{background:#e9f6ee;color:#1d5c37}
.ppg-dash .ppg-tag-wait{background:#fff3dc;color:#7a520b}

/* Staff check-in */
.ppg-dash.ppg-checkin{max-width:760px}
.ppg-checkin-date select{padding:10px 12px;border:1px solid #d6d1c5;border-radius:10px;font:500 .95rem var(--ppg-body)}
.ppg-dash .ppg-checkin-stats{grid-template-columns:repeat(3,1fr);margin-bottom:16px}
.ppg-ci-search{width:100%;padding:13px 16px;border:1px solid #d6d1c5;border-radius:999px;font:400 1rem var(--ppg-body);margin-bottom:12px}
.ppg-ci-list{list-style:none;margin:0 0 20px;padding:0}
.ppg-ci-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--ppg-line);border-radius:12px;margin-bottom:8px}
.ppg-ci-row.is-in{background:#f0f8f3;border-color:#b9e2c7}
.ppg-ci-who{flex:1;min-width:0;display:flex;flex-direction:column}
.ppg-ci-who strong{font-size:1.02rem}
.ppg-ci-who small{color:var(--ppg-muted);font-size:.85rem}
.ppg-ci-btn{flex:none;min-width:110px;padding:12px 14px;border-radius:999px;border:2px solid var(--ppg-primary);background:#fff;color:var(--ppg-primary);font:700 .95rem var(--ppg-body);cursor:pointer}
.ppg-ci-btn[aria-pressed=true]{background:#1d5c37;border-color:#1d5c37;color:#fff}
.ppg-ci-btn:disabled{opacity:.6}
.ppg-walkin summary{cursor:pointer;font-weight:700;color:var(--ppg-primary)}
.ppg-walkin .ppg-form{margin-top:12px}
@media (max-width:560px){.ppg-dash .ppg-checkin-stats{grid-template-columns:repeat(3,1fr)}.ppg-ci-btn{min-width:96px}}

/* My Network button (also on pages that don't load the profile styles) */
.ppg-net{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;vertical-align:top}
.ppg-net-badge{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border-radius:999px;background:var(--ppg-accent,#F4EC32);color:#0A0B0D;font:600 .85rem var(--ppg-body,inherit);white-space:nowrap}
.ppg-net-remove{-webkit-appearance:none;appearance:none;background:none;border:0;border-radius:0;box-shadow:none;padding:0 2px;font:600 .8rem var(--ppg-body,inherit);color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;opacity:.85;white-space:nowrap}
.ppg-net-remove:hover{opacity:1;background:none}
.ppg-net-remove:disabled{opacity:.5;cursor:wait}
/* Who's coming: keep the name readable; the My Network badge sits compactly on the right */
.ppg-dash .ppg-coming-list .ppg-net{flex:none;align-items:flex-end;gap:4px;margin-left:auto}
.ppg-dash .ppg-coming-list .ppg-net-badge{padding:5px 11px;font-size:.76rem}
.ppg-dash .ppg-coming-list .ppg-net-remove{font-size:.74rem}
.ppg-dash .ppg-coming-list .ppg-net .ppg-btn{padding:6px 12px;min-height:0;font-size:.76rem;white-space:nowrap}
