/* Participant 360°: approved FPD theme remains authoritative. */
.wh-participants-page { min-width: 0; }
.wh-participant-top-actions { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; }
.wh-participant-filters { padding: 1rem; display: grid; grid-template-columns: minmax(190px,1.4fr) repeat(3,minmax(140px,1fr)); gap: .7rem; align-items: end; }
.wh-participant-filters label { display: flex; flex-direction: column; gap: .35rem; min-width: 0; font-weight: 600; }
.wh-participant-filters input, .wh-participant-filters select { width: 100%; min-width: 0; min-height: 2.6rem; }
.wh-participant-filter-actions { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; grid-column: 1 / -1; }
.wh-participant-results { margin: 1rem 0; color: var(--muted, #51647c); }
.wh-participant-directory { display: grid; gap: .75rem; }
.wh-participant-person { display: grid; grid-template-columns: 3rem minmax(160px,1.5fr) minmax(230px,1fr) auto; align-items: center; gap: 1rem; padding: 1rem; min-width: 0; }
.wh-participant-avatar { background: #e7f1f8; color: #133b61; display: grid; place-items: center; width: 3rem; height: 3rem; border-radius: 12px; font-weight: 800; font-size: 1.3rem; }
.wh-participant-identification { min-width: 0; overflow-wrap: anywhere; }
.wh-participant-identification h2 { font-size: 1rem; margin: 0 0 .3rem; }
.wh-participant-identification h2 a { color: inherit; }
.wh-participant-identification p { margin: .15rem 0; }
.wh-participant-email { overflow-wrap: anywhere; }
.wh-participant-mini-metrics { display: flex; gap: .75rem; flex-wrap: wrap; font-size: .85rem; color: #43576e; }
.wh-participant-mini-metrics span { display: flex; flex-direction: column; }
.wh-participant-mini-metrics strong { color: #153954; font-size: 1.13rem; }
.wh-participant-empty { padding: 2rem; text-align: center; }
.wh-participant-pagination { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 1rem; margin: 1rem 0; }
.wh-participant-identity-badge { background: #e7f1f8; border: 1px solid #cbdfe9; border-radius: 30px; color: #163d5f; padding: .4rem .8rem; }
.wh-participant-notice { background: #eaf4f8; border: 1px solid #cde4f0; padding: .8rem 1rem; border-radius: 10px; margin: 1rem 0; }
.wh-participant-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; margin-bottom: 1rem; }
.wh-participant-kpi { padding: 1rem; display: flex; flex-direction: column; gap: .45rem; }
.wh-participant-kpi strong { font-size: clamp(1.4rem, 2vw, 2rem); color: #183b59; }
.wh-participant-kpi span { font-size: .85rem; color: #52667c; }
.wh-participant-profile-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.wh-participant-contact { padding: 1.25rem; min-width: 0; }
.wh-participant-contact h2 { font-size: 1.1rem; margin: 0 0 .9rem; }
.wh-participant-contact dl { margin: 0; }
.wh-participant-contact dl div { display: grid; grid-template-columns: minmax(90px,1fr) 2fr; gap: 1rem; border-bottom: 1px solid #e8edf2; padding: .5rem 0; }
.wh-participant-contact dt { color: #61758a; }
.wh-participant-contact dd { margin: 0; overflow-wrap: anywhere; }
.wh-participant-section-heading { margin: 1.3rem 0 .75rem; }
.wh-participant-section-heading h2 { margin: 0; }
.wh-participant-section-heading p { margin: .3rem 0; }
.wh-participant-history { padding: 1rem; margin-bottom: .75rem; min-width: 0; }
.wh-participant-history-header { display: flex; justify-content: space-between; align-items: start; gap: 1rem; flex-wrap: wrap; }
.wh-participant-history-header h3 { margin: 0 0 .3rem; }
.wh-participant-history-header p { margin: .1rem 0; font-size: .86rem; }
.wh-participant-history-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; padding: .85rem 0; }
.wh-participant-history-facts div { display: flex; flex-direction: column; gap: .3rem; min-width: 0; overflow-wrap: anywhere; }
.wh-participant-history-facts small { color: #63778a; }
.wh-participant-history-facts strong { font-size: .91rem; }
.wh-participant-history-actions { display: flex; flex-wrap: wrap; align-items: start; gap: .6rem; }
.wh-participant-inline-actions { flex: 1 1 175px; max-width: 420px; border: 1px solid #dce6ee; border-radius: 9px; padding: .35rem .6rem; }
.wh-participant-inline-actions summary { cursor: pointer; font-weight: 600; padding: .25rem 0; }
.wh-participant-inline-actions form { display: flex; flex-direction: column; gap: .6rem; border-top: 1px solid #e7edf4; padding: .65rem 0; }
.wh-participant-inline-actions label { display: flex; flex-direction: column; gap: .3rem; }
.wh-participant-inline-actions input, .wh-participant-inline-actions textarea { width: 100%; }
.wh-participant-communications { padding: .5rem 1rem; }
.wh-participant-message { padding: .85rem 0; display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid #e6edf2; overflow-wrap: anywhere; }
.wh-participant-message:last-child { border-bottom: 0; }
.wh-participant-message p { font-size: .84rem; margin: .3rem 0 0; color: #50657a; }
.wh-participant-message > div:last-child { display: flex; flex-direction: column; align-items: end; gap: .2rem; }
.wh-participant-person a:focus-visible, .wh-participant-inline-actions summary:focus-visible { outline: 3px solid #078f9e; outline-offset: 3px; }
@media (max-width: 1180px) { .wh-participant-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } .wh-participant-person { grid-template-columns: 3rem minmax(150px,1fr) auto; } .wh-participant-mini-metrics { grid-column: 2 / -1; } }
@media (max-width: 720px) { .wh-participant-filters { grid-template-columns: minmax(0,1fr); } .wh-participant-person { grid-template-columns: 2.7rem minmax(0,1fr); } .wh-participant-person > .btn { grid-column: 1 / -1; } .wh-participant-mini-metrics { grid-column: 1 / -1; } .wh-participant-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } .wh-participant-profile-grid { grid-template-columns: minmax(0,1fr); } .wh-participant-history-facts { grid-template-columns: repeat(2,minmax(0,1fr)); } .wh-participant-message { flex-direction: column; } .wh-participant-message > div:last-child { align-items: start; } }
@media (max-width: 360px) { .wh-participant-summary, .wh-participant-history-facts { grid-template-columns: minmax(0,1fr); } .wh-participant-top-actions .btn { width: 100%; } }
