/* ============================================================
   FichaCliente · ficha ÚNICA da pessoa (compartilhada cliente/time)
   CSS copiado 1:1 do "Meu perfil" do app do cliente e escopado
   em .ficha-root, pra render IDÊNTICO nos dois apps.
   Tokens locais: a ficha não depende do :root de cada app.
   ============================================================ */
.ficha-root{
  --blue:#152735;
  --blue-dark:#0D1720;
  --blue-soft:rgba(21,39,53,.07);
  --gold:#C19749;
  --gold-text:#7A5E27;
  --ink:#152735;
  --muted:#5C6B75;
  --line:#E3E1DA;
  --card:#FFFFFF;
  --display:'Sora',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  display:flex;flex-direction:column;gap:18px;
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;line-height:normal;color:var(--ink);text-align:left;
  -webkit-font-smoothing:antialiased;
}
.ficha-root *{box-sizing:border-box;margin:0;padding:0}

.ficha-root .backlink{display:inline-flex;align-items:center;gap:4px;font-size:13.5px;color:var(--gold-text);font-weight:600;cursor:pointer;text-decoration:none;width:fit-content}
.ficha-root .backlink:hover{text-decoration:underline}

.ficha-root .card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 1px 2px rgba(16,24,40,.04),0 10px 30px -24px rgba(21,39,53,.28)}
.ficha-root .card h2{font-family:var(--display);letter-spacing:-.01em;font-size:15px;font-weight:700;margin-bottom:2px}
.ficha-root .card .sub{font-size:13px;color:var(--muted);margin-bottom:14px}

.ficha-root .grp{display:flex;flex-direction:column;gap:14px;margin-top:2px}
.ficha-root .fld{display:flex;flex-direction:column;gap:7px}
.ficha-root .fld > label{font-size:13px;font-weight:600;color:#374151}
.ficha-root .req{color:#e2445c;font-weight:700}
.ficha-root .fld > label .req{margin-left:2px}
.ficha-root .ctl{height:46px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 13px;font-family:inherit;font-size:14px;color:var(--ink);width:100%}
.ficha-root .ctl::placeholder{color:#767C73}
.ficha-root .ctl:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(21,39,53,.14)}
.ficha-root textarea.ctl{height:auto;min-height:92px;padding:11px 13px;resize:vertical;line-height:1.5}
.ficha-root select.ctl{appearance:none;cursor:pointer;padding-right:34px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235C6B75' stroke-width='2' stroke-linecap='round'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 11px center}
.ficha-root .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}

.ficha-root .check{display:flex;align-items:center;gap:9px;font-size:13.5px;cursor:pointer}
.ficha-root .check input{accent-color:var(--blue);width:17px;height:17px}

.ficha-root .filebox{display:flex;align-items:center;gap:12px;border:1px dashed #D5D2C9;border-radius:12px;padding:13px 14px;background:#FCFBF7;cursor:pointer}
.ficha-root .filebox:hover{border-color:var(--blue);background:#FAF8F1}
.ficha-root .filebox .fic{width:38px;height:38px;border-radius:10px;background:var(--blue-soft);color:var(--blue);display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:1px}
.ficha-root .filebox .ttl{font-size:13.5px;font-weight:600}
.ficha-root .filebox p{font-size:12px;color:var(--muted);margin-top:2px}
.ficha-root .filebox.enviado{border-style:solid;border-color:var(--gold)}
.ficha-root .filebox.enviado .fic{background:rgba(4,120,87,.12);color:#047857}
.ficha-root .fb-check{display:none;width:20px;height:20px;color:#047857;flex:0 0 auto;margin-left:auto}
.ficha-root .filebox.enviado .fb-check{display:block}
.ficha-root .fb-remove{display:none;border:none;background:none;color:#e2445c;font-size:12px;font-weight:600;cursor:pointer;flex:0 0 auto;padding:4px 6px;font-family:inherit}
.ficha-root .filebox.enviado .fb-remove{display:inline-block}

.ficha-root .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:2px}
.ficha-root .btn{height:42px;padding:0 18px;border-radius:10px;border:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;transition:background .15s,box-shadow .15s,transform .05s}
.ficha-root .btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 18px -10px rgba(21,39,53,.8)}
.ficha-root .btn-primary:hover{background:var(--blue-dark)}
.ficha-root .btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}
.ficha-root .btn-ghost:hover{background:#F0EEE8}

.ficha-root .perfil-head{display:flex;align-items:center;gap:14px}
.ficha-root .perfil-av{width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:18px;flex:0 0 auto}
.ficha-root .perfil-head .ph-nome{font-family:var(--display);letter-spacing:-.01em;font-size:16px;font-weight:700}
.ficha-root .perfil-head .ph-sub{font-size:13px;color:var(--muted);margin-top:2px}

.ficha-root .perfil-ok{display:none;align-items:center;gap:9px;background:rgba(4,120,87,.1);color:#047857;border-radius:12px;padding:12px 15px;font-size:14px;font-weight:600;margin-top:4px}
.ficha-root .perfil-ok.show{display:flex}
.ficha-root .perfil-erro{display:none;color:#e2445c;font-weight:700;font-size:13px;margin-top:10px;text-align:center}
.ficha-root .perfil-erro.show{display:block}

@media (max-width:760px){
  .ficha-root .card{padding:16px}
  .ficha-root .two{grid-template-columns:1fr}
  .ficha-root .actions{flex-direction:column-reverse}
  .ficha-root .actions .btn{width:100%}
}
