/* assistant_todos.css — 인박스 첫 칸 「할 일」 + 내용 칸 (216 · 2.226.0 · 2.226.1 테마 변수만 — 다크에서 흰 바탕·흰 알약 금지) */
.at-box { border: 1px solid var(--line); border-radius: 10px; padding: .55rem .7rem .65rem; background: var(--panel); color: var(--fg); }
.at-head { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; }
.at-name { font-size: .95rem; }
.at-count { font-variant-numeric: tabular-nums; background: color-mix(in srgb, var(--fg) 12%, transparent); color: var(--fg);
  border-radius: 999px; padding: 0 .5rem; font-size: .8rem; }
.at-late-n { color: var(--danger, #d93025); font-size: .8rem; font-weight: 600; }
.at-seg { display: inline-flex; border: 1px solid var(--line); border-radius: 999px; overflow: hidden; margin-left: .25rem; }
.at-seg button { border: 0; background: transparent; color: var(--muted); padding: 0 .7rem; min-height: 28px; cursor: pointer; font-size: .8rem; }
.at-seg button.on { background: color-mix(in srgb, var(--accent) 24%, transparent); color: var(--fg); font-weight: 600; }
.at-add { min-width: 32px; min-height: 28px; font-size: 1rem; line-height: 1; margin-left: auto; }
.at-group { margin-top: .5rem; }
.at-g-head { display: flex; gap: .35rem; align-items: baseline; font-size: .78rem; color: var(--muted); margin: .2rem 0 .1rem; font-weight: 600; }
.at-g-head b { font-variant-numeric: tabular-nums; font-weight: 500; }
.at-row { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .5rem; align-items: center;
  padding: .32rem .4rem; border-radius: 6px; cursor: pointer; color: var(--fg); }
.at-row:hover { background: color-mix(in srgb, var(--fg) 7%, transparent); }
.at-row.current { background: color-mix(in srgb, var(--accent) 16%, transparent); box-shadow: inset 3px 0 0 var(--accent); }
.at-row.done .at-title { text-decoration: line-through; color: var(--muted); }
.at-row.late { box-shadow: inset 3px 0 0 var(--danger, #d93025); }
.at-row.late.current { box-shadow: inset 3px 0 0 var(--danger, #d93025), inset 0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent); }
.at-check { width: 18px; height: 18px; cursor: pointer; margin: 0; accent-color: var(--accent); }
.at-main { min-width: 0; }
.at-line { display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; }
.at-title { font-weight: 500; overflow-wrap: anywhere; }
.at-memo { font-size: .8rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--muted); }
.at-chip { font-size: .7rem; border-radius: 999px; padding: 0 .45rem; white-space: nowrap; color: var(--fg);
  background: color-mix(in srgb, var(--fg) 10%, transparent); }
.at-chip.at-hold { background: color-mix(in srgb, #f59f00 26%, transparent); }
.at-chip.at-src-hq { background: color-mix(in srgb, #4c8dff 26%, transparent); }
.at-chip.at-src-meeting { background: color-mix(in srgb, #9b6bff 26%, transparent); }
.at-chip.at-src-mail { background: color-mix(in srgb, #2fbf71 26%, transparent); }
.at-chip.at-src-gpt { background: color-mix(in srgb, var(--fg) 14%, transparent); }
.at-link { border: 0; background: none; cursor: pointer; font-size: .95rem; padding: 0 .25rem; min-height: 24px; color: var(--fg); }
.at-link:hover { background: color-mix(in srgb, var(--fg) 12%, transparent); border-radius: 4px; }
.at-due { font-size: .78rem; color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
.at-due.late { color: var(--danger, #d93025); font-weight: 600; }
.at-done-toggle { margin-top: .4rem; font-size: .8rem; }
.at-empty { font-size: .85rem; margin: .4rem 0 0; }
/* 새 줄 칸(첫 칸) · 고치기(내용 칸) */
.at-form { display: flex; flex-direction: column; gap: .45rem; }
.at-form.compact { padding: .45rem; border: 1px dashed var(--line); border-radius: 6px; margin: .4rem 0; }
.at-f { display: flex; flex-direction: column; gap: .15rem; font-size: .78rem; color: var(--muted); min-width: 0; }
.at-f > input, .at-f > textarea, .at-f > select { font-size: .9rem; color: var(--fg); }
.at-f-row { display: flex; gap: .5rem; flex-wrap: wrap; align-items: flex-end; }
.at-f-row > .at-f { flex: 1 1 140px; }
.at-f-title { width: 100%; }
.at-f-memo, .at-f-link { width: 100%; resize: vertical; }
.at-f-btns { justify-content: flex-end; }
.at-f-btns .at-del { margin-right: auto; order: -1; }
.at-detail { display: flex; flex-direction: column; gap: .6rem; }
.at-d-head { display: flex; gap: .4rem; align-items: center; flex-wrap: wrap; }
.at-d-kind { font-size: .75rem; color: var(--muted); font-weight: 600; }
.at-d-title { margin: 0; font-size: 1.1rem; overflow-wrap: anywhere; }
.at-d-links { display: flex; flex-direction: column; gap: .3rem; align-items: flex-start; }
.at-d-open { min-height: 32px; max-width: 100%; text-align: left; }
.at-d-path { overflow-wrap: anywhere; }
.at-d-meta { font-size: .75rem; margin: 0; }
.todo-badge { background: var(--danger, #d93025); }
/* 2.226.1 · 여러 줄 칸 — 앱 공통 입력 꼴에 textarea 가 없어 다크에서 흰 바탕에 흐린 글씨였다(B159 캡처) */
.at-form textarea { background: var(--bg); color: var(--fg); border: 1px solid var(--line); border-radius: 6px;
  font: inherit; font-size: .9rem; padding: .4rem .55rem; box-sizing: border-box; }
.at-form textarea::placeholder { color: var(--muted); }
.at-form textarea:focus { outline: 2px solid color-mix(in srgb, var(--accent) 60%, transparent); outline-offset: 0; }
