.wvph-wrap{max-width:1100px;margin:0 auto;padding:16px;}
.wvph-header{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px;}
.wvph-header h2{margin:0;}
.wvph-filters{display:flex;gap:8px;flex-wrap:wrap;}
.wvph-pill{display:inline-block;padding:8px 12px;border-radius:999px;border:1px solid rgba(0,0,0,.12);text-decoration:none;}
.wvph-pill.is-active{font-weight:700;}
.wvph-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
@media (max-width:980px){.wvph-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.wvph-grid{grid-template-columns:1fr;}}
.wvph-card{border:1px solid rgba(0,0,0,.12);border-radius:16px;padding:14px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:10px;}
.wvph-card__top h3{margin:6px 0 4px 0;}
.wvph-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;border:1px solid rgba(0,0,0,.15);}
.wvph-badge--paid{font-weight:700;}
.wvph-meta{font-size:13px;opacity:.85;margin-top:4px;}
.wvph-desc{font-size:14px;line-height:1.35;}
.wvph-actions{margin-top:auto;}
.wvph-actions-row{display:flex;gap:10px;flex-wrap:wrap;}
.wvph-btn{display:inline-block;padding:10px 14px;border-radius:12px;border:1px solid rgba(0,0,0,.15);text-decoration:none;background:#fff;}
.wvph-btn--primary{font-weight:700;}
.wvph-inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.wvph-form{max-width:720px;border:1px solid rgba(0,0,0,.12);border-radius:16px;padding:14px;background:#fff;}
.wvph-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;}
.wvph-row input,.wvph-row textarea{width:100%;padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.18);}
.wvph-notice{border:1px dashed rgba(0,0,0,.25);border-radius:14px;padding:12px;margin:10px 0;background:rgba(0,0,0,.02);}
.wvph-notice--ok{border-style:solid;}
.wvph-notice--warn{border-style:solid;}
.wvph-table-wrap{overflow:auto;border:1px solid rgba(0,0,0,.12);border-radius:16px;background:#fff;}
.wvph-table{width:100%;border-collapse:collapse;min-width:680px;}
.wvph-table th,.wvph-table td{padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.08);text-align:left;}
.wvph-status{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.15);font-size:12px;}
.wvph-idcard{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:1px solid rgba(0,0,0,.12);border-radius:18px;padding:16px;background:#fff;max-width:900px;}
@media (max-width:820px){.wvph-idcard{grid-template-columns:1fr;}}
.wvph-idcard__photo{width:180px;height:180px;border-radius:999px;object-fit:cover;border:2px solid rgba(0,0,0,.12);display:block;margin-bottom:10px;}
.wvph-idcard__name{font-weight:800;font-size:20px;}
.wvph-idcard__role{opacity:.85;margin-top:2px;}
.wvph-idcard__id{margin-top:10px;}
.wvph-idcard__hint{margin-top:10px;font-size:13px;opacity:.8;}
.wvph-card--clock{max-width:720px;}
.wvph-profilecard{display:flex;gap:14px;align-items:flex-start;border:1px solid rgba(0,0,0,.12);border-radius:16px;background:#fff;padding:14px;margin-bottom:14px;flex-wrap:wrap;}
.wvph-profilecard__photo{width:110px;height:110px;border-radius:999px;object-fit:cover;border:2px solid rgba(0,0,0,.12);}
.wvph-profilecard__name{font-weight:800;font-size:18px;}
.wvph-profilecard__id{margin-top:6px;}
.wvph-profilecard__hint{margin-top:6px;font-size:13px;opacity:.8;}
