/* Join SMEAZ SACCOS: additions on top of the loan portal stylesheet */
.nominee{border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:10px 0}
.nominee legend{font-weight:600;padding:0 6px}
.product{margin:8px 0}.product .pfields{margin:0 0 8px 12px;padding:8px 12px;border-left:3px solid var(--brand-soft)}
.kyc{display:grid;gap:10px}.kcard{border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}
.kactions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.kactions form.upl{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}
.file{display:inline-block;background:#fff;color:var(--link);border:1px dashed var(--brand);border-radius:8px;padding:7px 12px;font-size:.9rem;cursor:pointer}
.file input{display:none}.file.has span::after{content:" ✓"}
.camwrap{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:50;padding:12px}
.cambox{background:#111;border-radius:12px;padding:12px;max-width:520px;width:100%;color:#fff;position:relative}
.cambox video{width:100%;border-radius:8px;background:#000;max-height:60vh;object-fit:cover}
.camguide{position:absolute;left:50%;top:14px;width:46%;aspect-ratio:3/4;transform:translateX(-50%);border:3px dashed rgba(255,255,255,.7);border-radius:50%/40%;pointer-events:none;display:none}
.cambox.face .camguide{display:block}
.cammsg{margin:8px 0;font-size:.95rem;min-height:1.4em}.cambox .actions{margin-top:6px}
table.simple{width:100%;border-collapse:collapse}table.simple td,table.simple th{padding:6px 4px;border-bottom:1px solid var(--line);text-align:left}
