/* Daily brief panel — the morning standup surfaced on the dashboard.
   Shares .panel/.panel-head chrome with Today's focus (src/app.css). */

.db-panel{ display:flex; flex-direction:column; min-width:0; }

.db-import-btn{
  margin-left:auto;
  padding:4px 12px; border-radius:999px;
  border:1px solid var(--line); background:var(--bg-card);
  color:var(--ink); font-size:12px; cursor:pointer;
  white-space:nowrap;
}
.db-import-btn:hover{ border-color:var(--ink-soft); }

/* Freshness pill — how stale the latest brief is. */
.db-fresh{ font-weight:600; }
.db-fresh.fresh{ color:var(--green); }
.db-fresh.aging{ color:var(--gold); }
.db-fresh.stale{ color:var(--red); }

.db-empty{
  padding:26px 18px; display:flex; flex-direction:column; gap:6px;
  text-align:center; color:var(--ink-muted); font-size:13px; line-height:1.6;
}
.db-empty b{ color:var(--ink); font-size:14px; }

.db-stale-note{
  padding:8px 14px; font-size:12px;
  color:var(--gold); background:color-mix(in oklab, var(--gold) 8%, transparent);
  border-bottom:1px solid var(--line-soft);
}

/* The standup's own "most urgent thing today" call. */
.db-headline{
  display:flex; gap:9px; align-items:flex-start;
  padding:10px 14px;
  background:color-mix(in oklab, var(--red) 8%, transparent);
  border-bottom:1px solid var(--line-soft);
  font-size:12.5px; line-height:1.55; color:var(--ink);
}
.db-headline-ic{ flex-shrink:0; }

.db-top{
  margin:0; padding:10px 14px 10px 32px;
  border-bottom:1px solid var(--line-soft);
  display:flex; flex-direction:column; gap:4px;
}
.db-top li{ font-size:12.5px; line-height:1.5; color:var(--ink); }
.db-top li::marker{ color:var(--ink-muted); font-weight:600; }

/* How many clients sit at each traffic light — the panel's whole client view. */
.db-signals{
  display:flex; flex-wrap:wrap; gap:8px;
  padding:10px 14px 2px 14px;
}
.db-signal-chip{
  display:inline-flex; align-items:baseline; gap:5px;
  padding:3px 10px; border-radius:999px;
  background:color-mix(in oklab, var(--ink) 5%, transparent);
  font-size:11.5px; color:var(--ink-muted);
}
.db-signal-chip b{ color:var(--ink); font-size:13px; }
.db-signal-word{ font-size:11px; }

.db-pointer{
  padding:8px 14px 12px 14px;
  font-size:11.5px; line-height:1.5; color:var(--ink-muted);
}

/* Traffic-light signal carried over from the brief's snapshot table. */
.db-signal{ flex-shrink:0; font-size:12px; line-height:1; }

.db-oneliner{ margin:0; font-size:12.5px; line-height:1.5; color:var(--ink-muted); font-style:italic; }

/* The "from the daily" line inside a client row. */
.db-row-cell .db-row-line{ display:flex; align-items:baseline; gap:6px; }
.db-row-cell .db-row-line span:last-child{ min-width:0; }

/* Import plan shown in the paste modal before saving. */
.db-import-toggle{
  display:flex; align-items:center; gap:8px;
  font-size:12.5px; color:var(--ink); cursor:pointer;
}
.db-import-toggle input{ accent-color:var(--teal); cursor:pointer; }
.db-plan{ display:flex; flex-direction:column; gap:6px; }
.db-plan-ok{
  font-size:12px; padding:6px 10px; border-radius:8px;
  background:color-mix(in oklab, var(--green) 12%, transparent); color:var(--green);
}
.db-plan-none{ font-size:12px; color:var(--ink-muted); padding:0 2px; }
.db-plan-warn{
  font-size:11.5px; line-height:1.5; padding:6px 9px; border-radius:8px;
  background:color-mix(in oklab, var(--gold) 12%, transparent); color:var(--gold);
}

/* Shared list/label primitives — used by the drawer note, the "who owes what"
   block and the general-topics list. */
.db-lines{ margin:0; padding-inline-start:16px; display:flex; flex-direction:column; gap:3px; }
.db-lines li{ font-size:12.5px; line-height:1.55; color:var(--ink); }

.db-block{ display:flex; flex-direction:column; gap:4px; }
.db-block-label{
  font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ink-muted);
}
.db-block.decided .db-lines li{ color:var(--teal); }

.db-tasklist{ margin:0; padding-inline-start:16px; display:flex; flex-direction:column; gap:4px; }
.db-tasklist li{
  font-size:12.5px; line-height:1.5;
  display:flex; flex-wrap:wrap; gap:6px; align-items:baseline;
}
.db-owner{
  font-size:10.5px; font-weight:600; padding:1px 6px; border-radius:999px;
  background:color-mix(in oklab, var(--plum) 14%, transparent); color:var(--plum);
}
.db-due{ font-size:10.5px; font-weight:600; color:var(--ink-muted); }
.db-note-tasks{ margin:2px 0 0 0; font-size:11.5px; color:var(--ink-muted); }

.db-general, .db-history, .db-people{ border-top:1px solid var(--line-soft); }
.db-general summary, .db-history summary, .db-people summary{
  padding:9px 14px; cursor:pointer; font-size:12px; color:var(--ink-muted);
  list-style:none;
}
.db-general summary::-webkit-details-marker,
.db-history summary::-webkit-details-marker,
.db-people summary::-webkit-details-marker{ display:none; }
.db-general summary:hover, .db-history summary:hover, .db-people summary:hover{ color:var(--ink); }
.db-general .db-lines{ padding:0 14px 12px 30px; }

/* Who owes what — per-person task lists from the brief. */
.db-people-list{ display:flex; flex-direction:column; gap:10px; padding:2px 14px 12px 14px; }
.db-person{ display:flex; flex-direction:column; }
.db-person-head{ display:flex; align-items:baseline; gap:8px; margin-bottom:3px; }
.db-person-head b{ font-size:12.5px; color:var(--ink); }
.db-person-head span{ margin-left:auto; font-size:11px; color:var(--ink-muted); }
.db-people .db-tasklist{ padding-inline-start:14px; }
.db-people .db-tasklist li.done{ color:var(--ink-muted); text-decoration:line-through; }
.db-urgent{ flex-shrink:0; font-size:11px; }

.db-history-list{ display:flex; flex-direction:column; padding-bottom:6px; }
.db-history-row{
  display:flex; align-items:center; gap:10px;
  padding:5px 14px; font-size:12px; color:var(--ink-muted);
}
.db-history-row b{ color:var(--ink); min-width:52px; }
.db-history-del{
  margin-left:auto; border:none; background:none; cursor:pointer;
  color:var(--ink-muted); font-size:16px; line-height:1; padding:0 4px;
}
.db-history-del:hover{ color:var(--red); }

/* ===== Import modal ===== */
.db-modal{ max-width:640px; width:min(640px, 94vw); }
.db-modal-head{
  display:flex; align-items:flex-start; gap:12px;
  padding:16px 18px; border-bottom:1px solid var(--line);
}
.db-modal-head h3{ margin:2px 0 0 0; font-size:19px; }
.db-modal-eyebrow{
  font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--ink-muted);
}
.db-modal-head .bar-modal-close{ margin-left:auto; position:static; }

.db-modal-body{ padding:14px 18px; display:flex; flex-direction:column; gap:12px; max-height:64vh; overflow:auto; }
.db-hint{ margin:0; font-size:12px; line-height:1.6; color:var(--ink-muted); }
.db-hint code{
  font-size:11px; padding:1px 4px; border-radius:4px;
  background:color-mix(in oklab, var(--ink) 7%, transparent);
}

.db-textarea{
  width:100%; box-sizing:border-box;
  padding:10px 12px; border-radius:10px;
  border:1px solid var(--line); background:var(--bg-card); color:var(--ink);
  font-family:ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size:12px; line-height:1.6; resize:vertical;
}
.db-textarea:focus{ border-color:var(--accent); outline:none; }

.db-parse-err{
  padding:8px 12px; border-radius:8px; font-size:12px;
  background:color-mix(in oklab, var(--red) 10%, transparent); color:var(--red);
}

.db-preview{
  border:1px solid var(--line); border-radius:10px;
  padding:12px; display:flex; flex-direction:column; gap:9px;
}
.db-preview-head{ display:flex; align-items:baseline; gap:10px; }
.db-preview-head b{ font-size:13.5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.db-preview-head span{ margin-left:auto; font-size:12px; color:var(--ink-muted); white-space:nowrap; }
.db-preview-stats{ display:flex; flex-wrap:wrap; gap:14px; font-size:12px; color:var(--ink-muted); }
.db-preview-stats b{ color:var(--ink); font-size:14px; }
.db-preview-warn{
  font-size:11.5px; line-height:1.5; padding:6px 9px; border-radius:8px;
  background:color-mix(in oklab, var(--gold) 12%, transparent); color:var(--gold);
}

/* ===== "Last daily" note inside the client drawer ===== */
.db-client-note{
  border:1px solid var(--line); border-radius:12px;
  padding:12px 14px; display:flex; flex-direction:column; gap:5px;
}
.db-client-note-head{ display:flex; align-items:baseline; gap:8px; }
.db-client-note-head .db-fresh{ margin-left:auto; font-size:11.5px; }
.db-client-note p{ margin:0; font-size:12.5px; line-height:1.55; color:var(--ink); }

.db-client-note .db-note-tasks{ color:var(--ink-muted); font-size:12px; }

@media (max-width: 720px){
  .db-modal{ width:96vw; }
  
}
