/* KTM Voyage CRM — activity feed + notes panel [QNO]
   Module-specific styling only; tokens come from base.css (:root). */

/* ---------- activity feed ---------- */

.act-feed{display:flex;flex-direction:column;gap:22px;max-width:860px}

.act-day-h{
  font-family:"Lato",system-ui,sans-serif;font-size:12px;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;color:var(--muted);
  margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line);
}

.act-item{
  display:flex;align-items:flex-start;gap:10px;
  padding:9px 12px;border-radius:8px;background:var(--card);
  border:1px solid transparent;
}
.act-item:hover{border-color:var(--line);box-shadow:var(--shadow)}
.act-item+.act-item{margin-top:6px}

.act-av{
  flex:0 0 auto;width:28px;height:28px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--dark-2);color:#fff;font-size:11px;font-weight:700;
  letter-spacing:.02em;
}
.act-av-sys{background:var(--paper);border:1px solid var(--line);font-size:14px}

.act-ic{flex:0 0 auto;font-size:15px;line-height:28px;opacity:.8}

.act-txt{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;padding-top:4px}

.act-time{
  flex:0 0 auto;color:var(--muted-2);font-size:12px;
  font-variant-numeric:tabular-nums;padding-top:5px;
}

.act-datelbl{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--muted);font-size:12.5px;
}
.act-datelbl input[type=date]{
  padding:8px 10px;border:1px solid var(--line);border-radius:8px;
  background:#fff;font-size:13px;color:var(--ink);font-family:inherit;
}

.act-pager{
  display:flex;align-items:center;justify-content:center;gap:14px;
  margin:20px 0 6px;
}
.act-page{color:var(--muted);font-size:13px}
.act-pager .btn[disabled]{opacity:.45;cursor:default}

/* ---------- notes panel (embeddable on detail pages) ---------- */

.notes-panel{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:16px 18px;margin-top:20px;max-width:860px;
}

.np-title{font-size:15px;display:flex;align-items:center;gap:8px;margin-bottom:12px}
.np-count{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:22px;height:22px;padding:0 7px;border-radius:11px;
  background:var(--paper);border:1px solid var(--line);
  font-family:"Lato",system-ui,sans-serif;font-size:12px;font-weight:700;color:var(--muted);
}

.np-form{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}
.np-form textarea{
  flex:1 1 auto;min-width:0;resize:vertical;
  padding:10px 12px;border:1px solid var(--line);border-radius:8px;
  font-family:inherit;font-size:13.5px;color:var(--ink);background:#fff;
}
.np-form textarea:focus{border-color:var(--gold);outline:none}
.np-form .btn{flex:0 0 auto;white-space:nowrap}

.np-list{display:flex;flex-direction:column;gap:10px}
.np-empty{color:var(--muted);font-size:13px;margin:2px 0 0}

.np-item{
  border:1px solid var(--line);border-radius:8px;padding:10px 12px;
  background:#fdfcf8;
}
.np-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.np-av{
  width:24px;height:24px;border-radius:50%;flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--dark-2);color:#fff;font-size:10px;font-weight:700;
}
.np-author{font-size:13px}
.np-time{color:var(--muted-2);font-size:12px;font-variant-numeric:tabular-nums}
.np-edited{color:var(--muted-2);font-size:11.5px;font-style:italic}
.np-btns{margin-left:auto;display:inline-flex;gap:4px}
.np-del{color:var(--bad)}

.np-text{margin:0;overflow-wrap:anywhere;white-space:normal}

.np-editbox textarea{
  width:100%;resize:vertical;padding:10px 12px;margin-top:4px;
  border:1px solid var(--gold);border-radius:8px;
  font-family:inherit;font-size:13.5px;color:var(--ink);background:#fff;
}
.np-editbtns{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}

/* ---------- small screens ---------- */

@media (max-width:640px){
  .act-item{flex-wrap:wrap}
  .act-txt{flex-basis:100%;order:3;padding-top:2px}
  .np-form{flex-direction:column}
  .np-form .btn{align-self:flex-end}
  .np-btns{flex-basis:100%;justify-content:flex-end;margin-left:0}
}
