/* 客户管理浮层：仅 .ca- 前缀，零全局覆盖 */
.ca-panel{position:fixed;inset:0;z-index:99;display:none;
 background:rgba(70,50,95,.42);backdrop-filter:blur(3px)}
.ca-panel.on{display:block}
.ca-wrap{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
 width:min(94vw,720px);max-height:88vh;overflow-y:auto;background:#fff;
 border-radius:22px;padding:18px;box-shadow:0 18px 48px rgba(80,50,110,.3)}
.ca-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.ca-head b{font-size:17px;font-weight:900;color:#5c407f}
.ca-head button{border:0;background:#f3eafb;color:#8e6fc0;width:30px;height:30px;
 border-radius:50%;font-size:15px;cursor:pointer}
.ca-tip{margin:0 0 12px;font-size:11px;line-height:1.8;color:#8b7aa8;
 background:#faf5fd;border-radius:12px;padding:9px 11px}
.ca-add{border:0;border-radius:14px;padding:10px 16px;font-size:12px;font-weight:900;
 color:#5c407f;background:linear-gradient(100deg,#f9c9dd,#dcc9f6);cursor:pointer}
.ca-list{margin-top:12px}
.ca-row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;
 background:#faf6fe;margin-bottom:8px;flex-wrap:wrap}
.ca-ava{width:42px;height:42px;flex:none;border-radius:50%;background:#fff;
 display:grid;place-items:center;font-size:20px;overflow:hidden}
.ca-ava img{width:100%;height:100%;object-fit:cover}
.ca-info{flex:1;min-width:120px}
.ca-info b{display:block;font-size:13px;color:#4b3d70;font-weight:900}
.ca-info small{display:block;font-size:10px;color:#a99cc0;margin-top:2px}
.ca-star{font-style:normal;font-size:9px;color:#c47aa0;background:#fdeaf3;
 padding:3px 7px;border-radius:10px;margin-left:6px}
.ca-ops{display:flex;gap:5px;flex-wrap:wrap}
.ca-ops button,.ca-btns button,.ca-up button{border:0;border-radius:10px;
 padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer;
 background:#f0e8fa;color:#8e6fc0}
.ca-ops button:last-child{background:#fdeef4;color:#c47aa0}
.ca-form{margin-top:14px;border-top:1px dashed rgba(160,130,200,.3);padding-top:12px}
.ca-form h4{margin:0 0 10px;font-size:14px;color:#5c4b7d;font-weight:900}
.ca-form label{display:block;margin-bottom:9px;font-size:11px;font-weight:800;color:#8b7aa8}
.ca-form input,.ca-form textarea{display:block;width:100%;margin-top:5px;
 font-size:12px;padding:9px 10px;border:1px solid rgba(160,130,200,.28);
 border-radius:10px;background:#fff;color:#5c4b7d;box-sizing:border-box}
.ca-up{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ca-up input[type=text]{flex:1;min-width:140px;margin-top:0}
.ca-prev{width:42px;height:42px;flex:none;border-radius:10px;background:#f7f0fc;
 display:grid;place-items:center;font-size:20px;overflow:hidden}
.ca-prev img{width:100%;height:100%;object-fit:cover}
.ca-btns{display:flex;gap:8px;margin-top:12px}
.ca-btns button{flex:1;padding:11px}
.ca-btns .ca-save{background:linear-gradient(100deg,#f9c9dd,#dcc9f6);color:#5c407f}
.ca-empty{text-align:center;font-size:12px;line-height:2;color:#a99cc0;padding:24px 0}
.ca-empty small{font-size:10px;color:#bdb0cf}
