.client-summary{display:grid;grid-template-columns:repeat(3,1fr) 1.4fr;gap:14px;margin-bottom:20px}.client-summary>div{background:white;border:1px solid var(--line);border-radius:10px;padding:17px}.client-summary span{font-size:14px;color:var(--muted)}.client-summary strong{display:block;font-size:26px;color:var(--ink);margin-top:4px}.client-summary .client-storage{display:flex;align-items:center;gap:14px;background:#f2f7f3}.client-storage .icon{width:32px;height:32px;color:#357055}.client-storage strong{font-size:14px;color:#357055}.client-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.client-toolbar input{width:min(320px,100%)}.client-status{display:inline-block;font-size:12px;border-radius:20px;padding:5px 10px;white-space:nowrap}.client-status.complete{background:#eaf4ed;color:#2f7149}.client-status.incomplete{background:#fff2df;color:#92641c}.client-id{font-size:11px;color:#8d8189;max-width:200px;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.client-row-actions{display:flex;gap:12px;align-items:center}.client-row-actions button{font-size:13px;white-space:nowrap}.client-pagination{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;font-size:14px;color:var(--muted)}.client-pagination div{display:flex;gap:8px}button:disabled{opacity:.48;cursor:not-allowed}.client-empty{text-align:center;padding:45px 20px}.client-empty>.icon,.client-empty>div .icon{width:45px;height:45px;color:#b6758d;margin:0 auto 15px}.client-empty p{color:var(--muted);margin:12px auto 20px}.client-error{background:#fff0f1;border:1px solid #f1cad2;border-radius:7px;padding:12px;color:#9e3548;font-size:14px;margin-top:14px}.client-error[hidden]{display:none}.client-error button{margin-left:10px}.client-full-id{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.client-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.client-details dt{font-size:13px;color:var(--muted)}.client-details dd{margin:5px 0 0;font-size:16px;overflow-wrap:anywhere;white-space:pre-wrap}.identification-section{border:1px solid #eadce2;background:#fdf9fb;border-radius:10px;padding:17px;margin-top:18px}.identification-section>p{font-size:13px;margin-top:6px}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.upload-grid input{font-size:12px;padding:9px;background:white}.upload-grid small{color:var(--muted);font-size:12px}.document-link{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:12px;padding:13px;background:white;border:1px solid var(--line);border-radius:7px;color:var(--ink);text-decoration:none;font-size:14px}.document-link strong{color:var(--rose);white-space:nowrap;font-size:13px}.document-link small{color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.birthday-field{border:0;padding:0;margin:0;min-width:0}.birthday-field legend{font-size:14px;margin-bottom:8px}.birthday-field legend span{font-size:12px;color:var(--muted);margin-left:8px}.birthday-field>div{display:flex;gap:12px}.birthday-field select{width:50%}textarea{font:inherit;border:1px solid #dfd9dd;border-radius:7px;padding:10px 12px;resize:vertical;color:var(--ink)}#client-dialog{width:min(760px,93vw);max-height:92vh;overflow-y:auto}#client-dialog h2{font-size:23px}.settings-client-tabs{margin:10px 0 22px;border-bottom:1px solid var(--line);padding-bottom:10px}.client-maintenance{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:20px}.client-maintenance .card{display:flex;flex-direction:column;align-items:flex-start;padding:22px}.client-maintenance p{font-size:14px;color:var(--muted);margin:12px 0 20px}.client-maintenance button,.file-button{margin-top:auto;font-size:14px}.maintenance-step{height:29px;width:29px;display:grid;place-items:center;border-radius:50%;background:#f4e4eb;color:var(--rose);font-size:14px;margin-bottom:12px}.file-button{padding:10px 15px;border:1px solid var(--rose);border-radius:8px;background:var(--rose);color:white;cursor:pointer;display:block}.file-button input{position:absolute;opacity:0;width:1px;height:1px;padding:0}.file-button:focus-within{outline:3px solid #b77691;outline-offset:3px}.maintenance-guide{margin-bottom:20px}.maintenance-guide ul{padding-left:22px;color:#635b64;font-size:14px;line-height:1.7}.maintenance-guide h2{font-size:18px}.import-panel{margin-top:20px}.import-panel td:last-child{min-width:260px;white-space:normal;font-size:13px}.import-counts{display:flex;gap:22px;margin:20px 0;color:#606570;font-size:14px}.import-counts strong{font-size:22px;color:var(--ink)}.import-counts .has-errors strong,.import-error-text{color:#aa2e49}.import-success{border-color:#d3e8d7;background:#f4faf5}.import-success h2{color:#387146}#maintenance-message{margin-top:15px;font-size:14px;color:var(--rose)}@media(max-width:1150px){.client-summary{grid-template-columns:repeat(3,1fr)}.client-summary .client-storage{grid-column:1/-1}.client-maintenance{grid-template-columns:1fr}.client-maintenance .card{padding:19px}.client-maintenance p{margin:8px 0 15px}}@media(max-width:850px){.client-summary{gap:9px}.client-summary>div{padding:12px}.client-summary span{font-size:12px}.client-toolbar{align-items:stretch}.client-toolbar input{flex:1;min-width:180px}.client-details{grid-template-columns:1fr}.client-details .full{grid-column:auto}.upload-grid{grid-template-columns:1fr}.client-pagination{flex-wrap:wrap}.import-counts{gap:10px;flex-wrap:wrap}}

.address-field{border:0;padding:0;margin:0;min-width:0}.address-field legend{font-size:14px;margin-bottom:8px}.address-field legend span{color:var(--rose)}.address-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:13px}.address-grid .street{grid-column:span 2}.address-grid label>span{font-size:11px;color:var(--muted);font-weight:400}.address-grid input{width:100%}#client-dialog{width:min(820px,93vw)}@media(max-width:850px){.address-grid{grid-template-columns:1fr 1fr}.address-grid .street{grid-column:1/-1}}

.document-upload{display:flex;flex-direction:column;gap:9px}.document-upload>strong{font-size:14px}.capture-actions{display:flex;gap:9px;flex-wrap:wrap}.camera-button,.capture-actions .file-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:0;padding:10px 14px;border-radius:8px;cursor:pointer;font-size:13px}.camera-button{background:var(--rose);border:1px solid var(--rose);color:white}.capture-actions .file-button.secondary{background:white;color:var(--rose)}.camera-button input,.capture-actions .file-button input{position:absolute;opacity:0;width:1px;height:1px;padding:0}.camera-button:focus-within,.capture-actions .file-button:focus-within{outline:3px solid #b77691;outline-offset:3px}

.address-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.address-grid .street{grid-column:span 4}.address-grid .address-number{grid-column:span 2}.address-grid .address-neighborhood,.address-grid .address-postal,.address-grid .address-city{grid-column:span 2}.address-grid .address-state,.address-grid .address-country{grid-column:span 3}@media(max-width:850px){.address-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.address-grid .street{grid-column:span 4}}

#camera-dialog{width:min(760px,92vw);padding:24px;overflow:hidden}#camera-dialog::backdrop{background:rgba(24,20,23,.68)}.camera-stage{position:relative;margin:18px 0;background:#171717;border-radius:12px;overflow:hidden;min-height:360px;display:grid;place-items:center}.camera-stage video{display:block;width:100%;max-height:62vh;object-fit:contain}.camera-stage p{position:absolute;left:14px;right:14px;bottom:12px;margin:0;padding:9px 12px;border-radius:7px;background:rgba(0,0,0,.72);color:white;font-size:13px;text-align:center}.capture-feedback{min-height:17px;color:#317148!important;font-weight:600}.camera-button{font:inherit}

.field-hint,.desirable{font-size:12px;color:var(--muted);font-weight:400;margin-left:6px}.address-field legend .desirable,.identification-section .desirable{color:#7a6e76}.upload-grid.single{grid-template-columns:1fr}.document-frame{position:absolute;left:50%;top:42%;width:min(70%,540px);aspect-ratio:1.586/1;transform:translate(-50%,-50%);border:3px solid rgba(255,255,255,.92);border-radius:14px;box-shadow:0 0 0 999px rgba(0,0,0,.24),0 0 0 1px rgba(0,0,0,.35);pointer-events:none;transition:border-color .2s,box-shadow .2s}.document-frame::before,.document-frame::after{content:'';position:absolute;inset:9px;border:1px dashed rgba(255,255,255,.6);border-radius:9px}.document-frame::after{inset:50% 16px auto;height:1px;border:0;background:rgba(255,255,255,.22)}.document-frame span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:90%;text-align:center;color:white;font-size:13px;text-shadow:0 1px 4px #000}.document-frame.ready{border-color:#6ee7a2;box-shadow:0 0 0 999px rgba(0,0,0,.18),0 0 24px rgba(70,220,135,.65)}.camera-stage p{z-index:3}.camera-stage video{z-index:0}@media(max-width:650px){.document-frame{width:78%}}

.client-summary{grid-template-columns:repeat(4,1fr) 1.4fr}.client-status.blacklisted{background:#f9dce2;color:#8b1f3d;font-weight:800}.blacklist-alert{margin:16px 0;padding:15px;border:1px solid #d88c9e;border-left:5px solid #a92f50;border-radius:9px;background:#fff0f3;color:#6f1c35}.blacklist-alert p{margin:6px 0}.blacklist-alert small{color:#89576a}.identity-preview{display:block;width:100%;max-height:420px;object-fit:contain;margin:14px 0;border:1px solid #dfd5d9;border-radius:10px;background:#262226}.identity-preview.pdf{height:420px}.client-detail-actions{flex-wrap:wrap}.client-detail-actions .danger-button{margin-right:auto;color:#a32642;border-color:#c96d84}.client-detail-actions .danger-button:hover{background:#a32642;color:white}@media(max-width:1150px){.client-summary{grid-template-columns:repeat(4,1fr)}.client-summary .client-storage{grid-column:1/-1}}@media(max-width:850px){.client-summary{grid-template-columns:repeat(2,1fr)}}

.client-row-actions{gap:7px;flex-wrap:wrap;min-width:350px}.client-row-actions .client-action{padding:7px 10px;background:#fff;color:#303035;border-color:#d9d2d5;font-weight:600}.client-row-actions .client-action:hover{background:#f7f0f3;color:#7d354d}.client-row-actions .client-action.edit{color:#8e4059;border-color:#d9aebe}.client-row-actions .client-action.blacklist{color:#713047;border-color:#c98ca1;background:#fff7f9}.client-row-actions .client-action.delete{color:#9b2742;border-color:#d28a9b;background:#fff}.client-row-actions .client-action.delete:hover{background:#9b2742;color:#fff}.identity-preview{width:min(100%,460px);max-height:260px;margin:12px auto 7px}.identity-preview.pdf{height:260px}.identity-caption{text-align:center;color:var(--muted);font-size:12px}.client-detail-actions>button{background:#fff;color:#303035}.client-detail-actions>button:hover{background:#f4eef0}.client-detail-actions .primary{background:var(--rose);color:#fff;border-color:var(--rose)}.client-detail-actions .danger-button{background:#fff;color:#a32642;border-color:#c96d84}.client-detail-actions .danger-button:hover{background:#a32642;color:#fff}

.client-row-actions{min-width:0;justify-content:flex-end}.client-row-actions .client-action.view{color:#7d3a52;border-color:#c98ca1;background:#fff;padding:8px 13px}.client-row-actions .client-action.view:hover{color:#fff;background:#8f4860;border-color:#8f4860}.client-detail-actions{justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);padding-top:17px}.client-sensitive-actions,.client-record-actions{display:flex;gap:9px;flex-wrap:wrap}.client-delete-action{color:#9b2742!important;background:#fff!important;border-color:#cf8092!important}.client-delete-action:hover{color:#fff!important;background:#9b2742!important}.client-blacklist-action{color:#704313!important;background:#fff7e8!important;border-color:#d7a95f!important}.client-blacklist-action:hover{color:#fff!important;background:#9a641f!important;border-color:#9a641f!important}.client-history-action{color:#245a82!important;background:#f2f8fc!important;border-color:#83add0!important}.client-history-action:hover{color:#fff!important;background:#316f9e!important;border-color:#316f9e!important}.client-edit-action{color:#fff!important;background:#a5576c!important;border-color:#a5576c!important}.client-edit-action:hover{background:#8d455a!important;border-color:#8d455a!important}.client-close-action{color:#3f3b40!important;background:#f4f2f3!important;border-color:#d8d3d6!important}.client-close-action:hover{background:#dfdadd!important}.client-history-footer{border-top:1px solid var(--line);padding-top:17px}.client-empty.compact{padding:28px 16px}.client-empty.compact h3{margin:0}.client-history-footer button:first-child{color:#245a82;border-color:#83add0;background:#f2f8fc}@media(max-width:850px){.client-detail-actions{align-items:stretch}.client-sensitive-actions,.client-record-actions{width:100%}.client-record-actions{justify-content:flex-end}}

.client-history-status{display:inline-block;padding:5px 9px;border-radius:16px;color:#4c4650;background:#f0edf0;font-size:12px;white-space:nowrap}


#qr-capture-dialog{width:min(560px,92vw);padding:28px}#qr-capture-dialog::backdrop{background:rgba(24,20,23,.68);backdrop-filter:blur(3px)}.qr-capture-content{text-align:center;padding:18px 0 2px}.qr-code{width:min(330px,72vw);margin:0 auto 18px;padding:12px;border:1px solid #e4d9dd;border-radius:14px;background:#fff}.qr-code svg{display:block;width:100%;height:auto}.qr-waiting{font-weight:700;color:#443e43}.qr-waiting span{display:inline-block;width:10px;height:10px;border-radius:50%;background:#a5576c;animation:qrPulse 1.2s ease-in-out infinite}.qr-capture-content small{color:var(--muted)}.qr-loading,.qr-expired{text-align:center;padding:36px 10px}.qr-loading span{display:block;width:42px;height:42px;margin:0 auto 15px;border:4px solid #eadde2;border-top-color:#a5576c;border-radius:50%;animation:qrSpin .8s linear infinite}.remote-capture-received{display:flex;align-items:center;gap:14px;margin-top:13px;padding:12px;border:1px solid #b9d9c3;border-radius:10px;background:#f0f8f2}.remote-capture-received img{width:100px;height:64px;object-fit:cover;border-radius:7px;background:#262226}.remote-capture-received div{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.remote-capture-received strong{color:#2e7048}.remote-capture-received small{color:var(--muted)}.remote-capture-received button{margin-top:5px;padding:6px 9px;color:#8d455a;background:#fff}@keyframes qrSpin{to{transform:rotate(360deg)}}@keyframes qrPulse{50%{opacity:.35;transform:scale(.75)}}
