/* Business card block: Add contact and Add / edit opportunity dialogs */
.ct-card-scan{display:grid;grid-template-columns:minmax(180px,230px) 1fr;align-items:center;gap:8px 18px;margin-bottom:10px;border:1px solid #cfe0f1;border-radius:16px;background:linear-gradient(180deg,#f6faff,#eef5fc);padding:16px}
.ct-card-drop{display:grid;min-height:112px;place-items:center;overflow:hidden;border:2px dashed #9cc3e6;border-radius:13px;background:#fff;color:#4b5f7c;text-align:center;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.ct-card-drop:hover,.ct-card-drop:focus-visible{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px rgba(1,87,160,.1)}
.ct-card-drop.dragging{border-color:var(--blue);background:#e8f2fc}
.ct-card-drop.has-file{border-style:solid;border-color:#b7d3ee}
.ct-card-empty{display:grid;gap:4px;justify-items:center;padding:12px;font-size:12px}
.ct-card-empty b{color:var(--ink);font-size:14px}
.ct-card-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:#e6f0fa;font-size:20px}
.ct-card-thumb{display:block;width:100%;max-height:130px;object-fit:contain;background:#f1f5fa}
.ct-card-drop[hidden],.ct-card-thumb[hidden],.ct-card-info[hidden],.ct-card-empty[hidden]{display:none}
.ct-card-info{display:grid;width:100%;gap:2px;border-top:1px solid #edf0f5;padding:7px 10px;text-align:left}
.ct-card-info b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.ct-card-info small{color:var(--muted);font-size:11px}
.ct-card-actions .cs-extract{border-color:#8fbbe3;background:#e6f0fa;color:var(--accent-ink,#0157a0);font-weight:800}
.ct-card-actions .cs-extract:hover{background:#d6e8f8}
.ct-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ct-card-scan>small{grid-column:1/-1;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:600px){.ct-card-scan{grid-template-columns:1fr}.ct-card-actions .button{flex:1 1 auto;justify-content:center}}
