.face-capture{flex-direction:column;align-items:center;gap:1rem;width:100%;display:flex}.face-capture-frame{background:#0a1e38;border:3px solid #d8e5f5;border-radius:50%;width:min(260px,62vw);height:min(260px,62vw);transition:border-color .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 10px 30px #146cdc38}.face-capture-frame--positioning{border-color:#f5c518}.face-capture-frame--capturing,.face-capture-frame--processing{border-color:#146cdc;box-shadow:0 0 0 6px #146cdc1f,0 10px 30px #146cdc47}.face-capture-frame--done{background:#f0fdf4;border-color:#16a34a}.face-capture-frame--error{background:#fef2f2;border-color:#dc2626}.face-capture-video{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.face-capture-guide{pointer-events:none;border:2px dashed #ffffff8c;border-radius:50%;position:absolute;inset:10%}.face-capture-status{color:#146cdc;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.face-capture-status--done{color:#16a34a}.face-capture-status--error{color:#dc2626}.face-capture-caption{text-align:center;flex-direction:column;align-items:center;gap:.4rem;min-height:3.2rem;display:flex}.face-capture-title{color:#103360;align-items:center;gap:.4rem;font-size:.98rem;font-weight:700;display:inline-flex}.face-capture-hint{color:#6c757d;font-size:.85rem}.face-capture-error-text{color:#9b1c1c;max-width:320px;font-size:.9rem}.face-capture-actions{gap:.6rem;margin-top:.2rem;display:flex}.face-capture-btn{cursor:pointer;border:none;border-radius:20px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.88rem;font-weight:600;transition:transform .15s,background-color .15s;display:inline-flex}.face-capture-btn--primary{color:#fff;background:linear-gradient(135deg,#146cdc,#103360)}.face-capture-btn--primary:hover{transform:translateY(-1px)}.face-capture-btn--ghost{color:#6c757d;background:0 0;border:1px solid #e5e7eb}.face-capture-btn--ghost:hover{background:#f9fafb}.spinner{animation:.85s linear infinite face-capture-spin}@keyframes face-capture-spin{to{transform:rotate(360deg)}}
