/* Desenvolvido por: DriveWeb | Rodrigo Soares | © DriveWeb - Todos os direitos reservados */
/* Modal universal de detalhe de cliente — usado em Faturamento, Clientes, Agenda */

.dwag-cm-bg{
    position:fixed;inset:0;background:rgba(15,15,26,.55);
    display:none;align-items:center;justify-content:center;
    z-index:9999;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    animation:dwagCmFade .2s ease-out;
}
.dwag-cm-bg.show{display:flex}
@keyframes dwagCmFade{from{opacity:0}to{opacity:1}}
@keyframes dwagCmSlide{from{transform:translateY(20px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
.dwag-cm{
    background:#fff;border-radius:18px;
    width:94%;max-width:520px;
    max-height:92vh;display:flex;flex-direction:column;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(0,0,0,.32);
    animation:dwagCmSlide .25s cubic-bezier(.4,0,.2,1);
}
.dwag-cm-head{
    background:linear-gradient(135deg,#5b3fb8 0%,#7c5cf0 60%,#9b7af5 100%);
    color:#fff;padding:22px;
    display:flex;align-items:center;gap:14px;
    position:relative;
}
.dwag-cm-avatar{
    width:54px;height:54px;border-radius:50%;
    background:rgba(255,255,255,.22);color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-weight:700;font-size:22px;flex-shrink:0;
    border:2px solid rgba(255,255,255,.3);
}
.dwag-cm-head h3{margin:0;font-size:18px;font-weight:700;line-height:1.2}
.dwag-cm-head .sub{opacity:.9;font-size:12px;margin-top:3px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dwag-cm-head .sub .badge-novo{background:rgba(255,255,255,.22);padding:2px 8px;border-radius:10px;font-size:10px;font-weight:700;letter-spacing:.5px}
.dwag-cm-close{
    position:absolute;top:14px;right:14px;
    background:rgba(255,255,255,.18);border:0;color:#fff;
    width:32px;height:32px;border-radius:50%;cursor:pointer;
    display:inline-flex;align-items:center;justify-content:center;
    transition:background .15s;
}
.dwag-cm-close:hover{background:rgba(255,255,255,.34)}

.dwag-cm-stats{
    display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
    background:#e5e7eb;border-bottom:1px solid #e5e7eb;
}
.dwag-cm-stat{background:#fff;padding:10px 4px;text-align:center}
.dwag-cm-stat .n{font-size:18px;font-weight:700;color:#5b3fb8;line-height:1}
.dwag-cm-stat .l{font-size:9px;color:#6b7280;text-transform:uppercase;letter-spacing:.4px;margin-top:4px}

.dwag-cm-body{padding:8px 22px;overflow-y:auto;flex:1}
.dwag-cm-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #f1f1f5}
.dwag-cm-row:last-child{border-bottom:0}
.dwag-cm-row .ico{
    width:32px;height:32px;border-radius:9px;
    background:#f5f3ff;color:#5b3fb8;
    display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
    font-size:15px;
}
.dwag-cm-row .lbl{font-size:10px;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px;font-weight:600}
.dwag-cm-row .val{font-size:14px;color:#111827;font-weight:600;margin-top:1px;word-break:break-word}
.dwag-cm-row .val a{color:#5b3fb8;text-decoration:none}
.dwag-cm-row .val a:hover{text-decoration:underline}

.dwag-cm-section-title{
    font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.6px;
    font-weight:700;padding:14px 0 6px;border-bottom:0;
}
.dwag-cm-marc-list{display:flex;flex-direction:column;gap:6px;padding-bottom:8px}
.dwag-cm-marc{
    display:flex;align-items:center;gap:10px;padding:8px 10px;
    background:#fafafd;border-radius:8px;border:1px solid #f1f1f5;
}
.dwag-cm-marc .d{
    width:38px;height:38px;flex-shrink:0;border-radius:8px;
    background:#fff;border:1px solid #e5e7eb;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    font-size:9px;color:#6b7280;line-height:1;
}
.dwag-cm-marc .d strong{font-size:14px;color:#5b3fb8;font-weight:700;display:block}
.dwag-cm-marc .info{flex:1;min-width:0}
.dwag-cm-marc .info .s{font-size:13px;color:#111827;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dwag-cm-marc .info .p{font-size:11px;color:#6b7280}
.dwag-cm-marc .v{font-size:13px;font-weight:700;color:#5b3fb8;white-space:nowrap}
.dwag-cm-est{font-size:9px;font-weight:700;padding:2px 6px;border-radius:6px;text-transform:uppercase;display:inline-block}
.dwag-cm-est.atendida{background:rgba(0,214,143,.15);color:#08754f}
.dwag-cm-est.confirmada{background:rgba(79,142,247,.15);color:#2a5dbf}
.dwag-cm-est.agendada{background:rgba(255,193,7,.2);color:#b88500}
.dwag-cm-est.cancelada{background:rgba(255,84,112,.15);color:#b51c3a}

.dwag-cm-actions{
    display:grid;grid-template-columns:1fr 1fr;gap:8px;
    padding:14px 22px;background:#fafafd;border-top:1px solid #f1f1f5;
}
.dwag-cm-btn{
    padding:12px 14px;border-radius:11px;border:0;
    font-size:13px;font-weight:600;cursor:pointer;
    display:inline-flex;align-items:center;justify-content:center;gap:7px;
    transition:transform .12s, box-shadow .12s, opacity .15s;text-decoration:none;
}
.dwag-cm-btn:active{transform:scale(.97)}
.dwag-cm-btn.wa{background:#25D366;color:#fff}
.dwag-cm-btn.wa:hover{background:#1ebe5a;box-shadow:0 4px 12px rgba(37,211,102,.4)}
.dwag-cm-btn.tel{background:#5b3fb8;color:#fff}
.dwag-cm-btn.tel:hover{background:#4a32a0;box-shadow:0 4px 12px rgba(91,63,184,.4)}
.dwag-cm-btn:disabled,.dwag-cm-btn.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}

.dwag-cm-loading{padding:60px 20px;text-align:center;color:#9ca3af;font-size:13px}
.dwag-cm-loading::before{
    content:'';display:inline-block;width:24px;height:24px;
    border:3px solid #e5e7eb;border-top-color:#5b3fb8;border-radius:50%;
    animation:dwagCmSpin .8s linear infinite;margin-bottom:10px;display:block;margin:0 auto 12px;
}
@keyframes dwagCmSpin{to{transform:rotate(360deg)}}

@media(max-width:520px){
    .dwag-cm{width:96%;max-height:96vh;border-radius:14px}
    .dwag-cm-head{padding:18px}
    .dwag-cm-body{padding:8px 16px}
    .dwag-cm-actions{padding:12px 16px;grid-template-columns:1fr}
    .dwag-cm-stats{grid-template-columns:repeat(4,1fr)}
    .dwag-cm-stat .n{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
    .dwag-cm,.dwag-cm-bg{animation:none}
}
