.face-search{margin:24px 0;background:linear-gradient(130deg,#fffef9,#f0edf2)}
.face-search h2{margin:8px 0 12px}.face-search .lead{margin:10px 0 16px}
.face-search details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:.82rem;color:#745086;text-decoration:underline;text-underline-offset:4px}
.face-search .face-privacy{font-size:.75rem;line-height:1.7;padding:12px 0}
.face-search .face-camera{position:relative;width:min(100%,320px);aspect-ratio:3/4;overflow:hidden;border-radius:24px;margin:20px auto;background:#233d32}
.face-search video{display:block;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.face-search .face-oval{position:absolute;left:17%;top:12%;width:66%;height:76%;border:3px solid #fff8e8;border-radius:50%;box-sizing:border-box;box-shadow:0 0 0 200px #14271f70;transition:border-color .25s,box-shadow .25s}
.face-search .ready .face-oval{border-color:#a6e6a8;box-shadow:0 0 0 200px #14271f55,0 0 18px #a6e6a866}
.face-search .face-camera-hint{position:absolute;bottom:8px;left:10px;right:10px;margin:0;padding:10px 12px;border-radius:14px;background:#183b30ed;color:#fffef9;text-align:center;font-size:.8rem;line-height:1.5}
.face-search .face-consent{display:flex;gap:12px;align-items:flex-start;font-size:.78rem;line-height:1.7;margin:16px 0}
.face-search input[type=checkbox]{flex-shrink:0;width:22px;height:22px;accent-color:#28552f;margin-top:2px}
.face-search .face-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.face-search .face-actions button{min-width:0;margin-top:0;justify-content:center}
.face-search .face-progress{width:100%;height:9px;accent-color:#56734d;display:block;margin:12px 0}
.face-search .face-status{font-size:.8rem;line-height:1.65;margin:12px 0}
.face-search .face-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.face-search .face-result{min-width:0}.face-search .face-result>button{font-size:.72rem}
.face-search .face-review{padding:8px 10px;margin:0 0 8px;border-radius:10px;background:#f7edda;color:#705320;font-size:.72rem;line-height:1.5}
.face-search .face-glasses-label{display:grid;gap:8px;font-size:.8rem}
.face-search .face-glasses{width:100%;max-width:360px;min-height:44px;padding:10px;border:1px solid #b8c8b0;border-radius:12px;background:#fffef9;color:#28552f;font:inherit}
.face-search .face-glasses-help,.face-search .face-glasses-step p{font-size:.78rem;line-height:1.65}
.face-search .face-glasses-step{padding:16px;background:#eef2e8;border-radius:16px}
.face-search .face-glasses-step button{display:block;margin:10px 0;max-width:100%;white-space:normal}
.face-search [hidden]{display:none!important}
@media(max-width:700px){.face-search .face-results{grid-template-columns:repeat(2,minmax(0,1fr))}.face-search .face-actions button{flex:1}}
