/* MassaCoin — R155: notificações de reações (sino) e marcação de parceiro(a) no perfil. Só estilos novos; nada existente é alterado. */
.nf-item { border: var(--border-hair, 1px solid rgba(120,130,150,.25)); border-radius: 16px; margin-bottom: 8px; background: var(--navy-900, #fff); overflow: hidden; }
.nf-item.is-new { border-color: var(--mc-p, #2563EB); box-shadow: 0 0 0 1px var(--mc-p, #2563EB) inset; }
.nf-open { display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px 12px; background: none; border: 0; color: inherit; text-align: left; font: inherit; cursor: pointer; }
.nf-av { position: relative; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: rgba(37,99,235,.12); display: grid; place-items: center; font-weight: 700; }
.nf-av img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.nf-ic { position: absolute; right: -4px; bottom: -4px; font-style: normal; font-size: 15px; line-height: 1; background: var(--navy-900, #fff); border-radius: 50%; padding: 2px; }
.nf-tx { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.nf-line { font-size: 14px; line-height: 1.35; overflow-wrap: anywhere; }
.nf-when { font-size: 12px; opacity: .65; font-style: normal; }
.nf-act { display: flex; gap: 8px; padding: 0 12px 12px 68px; flex-wrap: wrap; align-items: center; }
.nf-state { font-size: 13px; opacity: .8; }
.nf-sec { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.nf-markall { background: none; border: 0; color: var(--mc-p, #2563EB); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; padding: 4px 0; }
.rt-box { display: flex; flex-direction: column; gap: 8px; margin: 6px 0 12px; padding: 12px; border-radius: 14px; border: 1px dashed var(--mc-p, #2563EB); background: rgba(37,99,235,.05); }
.rt-h { font-size: 14px; }
.rt-hint { opacity: .75; line-height: 1.35; }
.rt-cur { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14px; }
.rt-link { background: none; border: 0; padding: 0; color: var(--mc-p, #2563EB); font: inherit; font-size: 13px; font-weight: 600; text-decoration: underline; cursor: pointer; }
.rt-find input { width: 100%; box-sizing: border-box; }
.rt-res { display: flex; flex-direction: column; gap: 4px; margin-top: 6px; }
.rt-opt { display: flex; flex-direction: column; align-items: flex-start; gap: 0; width: 100%; padding: 8px 10px; border-radius: 10px; border: 1px solid rgba(120,130,150,.3); background: none; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.rt-opt em { font-style: normal; font-size: 12px; opacity: .7; }
.rt-box[hidden], .rt-box [hidden] { display: none !important; }
.nf-media{display:inline-block;margin:3px 0;padding:2px 10px;border-radius:999px;background:#e8efff;color:#2563EB;font-size:12px;font-weight:700}

/* R212 — separação Novas / Anteriores, etiqueta de tipo e horário */
.nf-group{display:flex;align-items:center;gap:8px;margin:14px 2px 8px;font-weight:800;font-size:15px}
.nf-group__n{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--mc-p,#2563EB);color:#fff;font-size:12px;display:inline-grid;place-items:center}
.nf-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}
.nf-type{font-size:11px;font-weight:800;letter-spacing:.02em;padding:2px 8px;border-radius:999px;background:rgba(37,99,235,.12);color:var(--mc-p,#2563EB)}
.nf-dot{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:var(--mc-p,#2563EB);margin-left:auto}

/* R225: miniatura de pré-visualização no aviso */
.nf-thumb{position:relative;flex:0 0 48px;width:48px;height:48px;border-radius:10px;overflow:hidden;background:rgba(37,99,235,.12);display:grid;place-items:center;font-size:22px;margin-left:auto}
.nf-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.nf-thumb--profile{border-radius:50%}
.nf-play{position:absolute;right:3px;bottom:3px;font-style:normal;font-size:9px;line-height:1;background:rgba(0,0,0,.65);color:#fff;border-radius:50%;width:16px;height:16px;display:grid;place-items:center;padding-left:1px}
.nf-thumb + .nf-dot{margin-left:0}
@media (max-width:360px){.nf-thumb{flex-basis:40px;width:40px;height:40px}}

/* R229: solicitações prioritárias para a equipe */
.nf-item.is-prio{border-left:4px solid #F59E0B}
