/* 회의록 양식기 — 카드 폭(컨테이너) 기준: 좁으면 할 일 「내용 / 담당·기한」 두 줄, 560px 넘으면 한 줄 */
[data-app="meeting-minutes"]{ container-type:inline-size; }
[data-app="meeting-minutes"] .mm-edit{ display:flex; flex-direction:column; gap:12px; }
[data-app="meeting-minutes"] .ndt-in{ max-width:100%; min-height:40px; }   /* 누르는 칸 40px */
[data-app="meeting-minutes"] .mm-note{ display:flex; align-items:flex-start; gap:8px; margin:0; padding:8px 10px; border-radius:10px; background:#FFF7E0; color:#5C4300; font-size:13px; line-height:1.5; }
[data-app="meeting-minutes"] .mm-note span{ min-width:0; word-break:keep-all; overflow-wrap:anywhere; }
[data-app="meeting-minutes"] .mm-note b{ flex:none; padding:0 7px; border-radius:6px; background:#F5C84C; color:#3A2A00; font-size:12px; line-height:20px; }
[data-app="meeting-minutes"] .mm-head{ display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
[data-app="meeting-minutes"] .mm-f{ display:flex; flex-direction:column; gap:3px; min-width:0; }
[data-app="meeting-minutes"] .mm-df .ndt-in{ max-width:13em; }
[data-app="meeting-minutes"] input[type="date"].ndt-in{ min-width:0; }
[data-app="meeting-minutes"] .mm-sec{ display:flex; flex-direction:column; gap:8px; padding-top:10px; border-top:1px solid #E9EBEF; }
[data-app="meeting-minutes"] .mm-h{ display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 8px; margin:0; font-size:14.5px; font-weight:800; color:#1A1A1A; }
[data-app="meeting-minutes"] .mm-cnt{ font-size:12.5px; font-weight:600; color:#6B717B; }
[data-app="meeting-minutes"] .mm-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
[data-app="meeting-minutes"] .mm-list li{ display:grid; grid-template-columns:18px minmax(0,1fr) 32px; grid-template-areas:"no t del" ". m m"; gap:6px; align-items:start; }
[data-app="meeting-minutes"] .mm-no{ grid-area:no; padding-top:9px; font-size:12.5px; font-weight:800; color:#8A8F98; text-align:center; font-variant-numeric:tabular-nums; }
/* 저절로 늘어나는 글칸: 같은 칸에 겹친 보이지 않는 복사본(::after)이 줄 수만큼 높이를 만듦 — 둘의 글꼴·여백·테두리는 똑같이 */
[data-app="meeting-minutes"] .mm-grow{ grid-area:t; display:grid; min-width:0; }
[data-app="meeting-minutes"] .mm-grow::after{ content:attr(data-v) " "; visibility:hidden; white-space:pre-wrap; }
[data-app="meeting-minutes"] .mm-grow > textarea.ndt-in, [data-app="meeting-minutes"] .mm-grow::after{ grid-area:1 / 1 / 2 / 2; box-sizing:border-box; min-width:0; min-height:40px; margin:0; padding:8px 10px; border:1px solid transparent; font:inherit; font-size:14px; line-height:1.45; word-break:keep-all; overflow-wrap:break-word; }
[data-app="meeting-minutes"] .mm-grow > textarea.ndt-in{ display:block; width:100%; resize:none; overflow:hidden; border-color:#D9DCE1; }
[data-app="meeting-minutes"] .mm-grow > textarea.ndt-in:focus{ border-color:var(--accent); }
[data-app="meeting-minutes"] .mm-del{ grid-area:del; width:32px; padding:0; margin-top:3px; color:#6B717B; }
[data-app="meeting-minutes"] .mm-del:hover{ color:#B42318; border-color:#F0B5AF; }
[data-app="meeting-minutes"] .mm-meta{ grid-area:m; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,10.5em); gap:6px; }
[data-app="meeting-minutes"] .mm-todo li{ padding-bottom:8px; border-bottom:1px dashed #E3E5EA; }
[data-app="meeting-minutes"] .mm-todo li:last-child{ padding-bottom:0; border-bottom:0; }
/* 단추 줄: 칸 고정 — 「회의록 복사」는 한 줄 전체, 나머지는 칸마다(좁으면 두 칸·「예시로 되돌리기」는 한 줄, 넓으면 세 칸)
   → 「복사됨 · 붙여 넣으세요」·「한 번 더 누르면 …」으로 글이 길어져도 칸 안에서 줄만 바뀌고 옆 단추는 그대로 */
[data-app="meeting-minutes"] .mm-btns{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
[data-app="meeting-minutes"] .mm-btns .ndt-btn{ min-height:44px; padding:0 8px; white-space:normal; line-height:1.25; text-align:center; word-break:keep-all; max-width:100%; }
[data-app="meeting-minutes"] .mm-btns .mm-copy{ grid-column:1 / -1; min-height:46px; font-size:15px; }
[data-app="meeting-minutes"] .mm-btns .mm-sample{ grid-column:1 / -1; }
[data-app="meeting-minutes"] .mm-fbp:empty{ display:none; }
[data-app="meeting-minutes"] .mm-msg{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0; font-size:13px; font-weight:700; color:#13703F; }
[data-app="meeting-minutes"] .mm-pv summary{ cursor:pointer; min-height:36px; display:flex; align-items:center; font-size:13px; font-weight:700; color:#314B86; }
[data-app="meeting-minutes"] .mm-pre{ margin:4px 0 0; max-height:280px; overflow:auto; padding:10px 12px; border:1px solid #E6E7EB; border-radius:10px; background:#FAFAFB; white-space:pre-wrap; word-break:keep-all; overflow-wrap:anywhere; font:inherit; font-size:13px; line-height:1.6; color:#333; }
[data-app="meeting-minutes"] .mm-foot{ margin:0; }
[data-app="meeting-minutes"] .mm-foot.bad{ color:#B42318; font-weight:700; }   /* 저장이 막혔을 때 */
[data-app="meeting-minutes"] .mm-sheet{ display:none; }
/* 폰·태블릿(손가락): 글자 16px — 입력칸을 누를 때 화면이 확대되지 않게 */
@media (pointer:coarse){
  [data-app="meeting-minutes"] .ndt-in, [data-app="meeting-minutes"] .mm-grow > textarea.ndt-in, [data-app="meeting-minutes"] .mm-grow::after{ font-size:16px; }
  [data-app="meeting-minutes"] .mm-grow > textarea.ndt-in, [data-app="meeting-minutes"] .mm-grow::after{ min-height:40px; }
}
@container (min-width:380px){
  [data-app="meeting-minutes"] .mm-btns{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  [data-app="meeting-minutes"] .mm-btns .mm-sample{ grid-column:auto; }
  [data-app="meeting-minutes"] .mm-head{ grid-template-columns:minmax(0,1fr) 11em; }
  [data-app="meeting-minutes"] .mm-pf{ grid-column:1 / -1; }
  [data-app="meeting-minutes"] .mm-df .ndt-in{ max-width:none; }
}
@container (min-width:560px){
  [data-app="meeting-minutes"] .mm-todo li{ grid-template-columns:18px minmax(0,1fr) 120px 10.5em 32px; grid-template-areas:"no t who due del"; padding-bottom:0; border-bottom:0; }
  [data-app="meeting-minutes"] .mm-meta{ display:contents; }
  [data-app="meeting-minutes"] .mm-who{ grid-area:who; }
  [data-app="meeting-minutes"] .mm-due{ grid-area:due; }
}
/* 인쇄: 입력 화면 대신 회의록 한 장 */
@media print{
  [data-app="meeting-minutes"]{ border:0; padding:0; border-radius:0; background:#fff; color:#000; }
  [data-app="meeting-minutes"] .mm-edit{ display:none !important; }
  [data-app="meeting-minutes"] .mm-sheet{ display:block; font-size:11pt; line-height:1.55; color:#000; }
  [data-app="meeting-minutes"] .mm-s-info, [data-app="meeting-minutes"] .mm-s-todo{ width:100%; border-collapse:collapse; }
  [data-app="meeting-minutes"] .mm-s-info th, [data-app="meeting-minutes"] .mm-s-info td, [data-app="meeting-minutes"] .mm-s-todo th, [data-app="meeting-minutes"] .mm-s-todo td{ padding:4pt 7pt; border:.75pt solid #555; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
  [data-app="meeting-minutes"] .mm-s-info th{ width:16%; font-weight:800; white-space:nowrap; }
  [data-app="meeting-minutes"] .mm-s-h{ margin:14pt 0 6pt; font-size:13pt; font-weight:800; break-after:avoid; page-break-after:avoid; }
  [data-app="meeting-minutes"] .mm-s-dec{ margin:0; padding-left:1.6em; }
  [data-app="meeting-minutes"] .mm-s-dec li{ margin:0 0 3pt; break-inside:avoid; page-break-inside:avoid; }
  [data-app="meeting-minutes"] .mm-s-todo thead{ display:table-header-group; }
  [data-app="meeting-minutes"] .mm-s-todo tr{ break-inside:avoid; page-break-inside:avoid; }
  [data-app="meeting-minutes"] .mm-s-todo thead th{ border-bottom:1.5pt solid #000; font-weight:800; text-align:center; }
  [data-app="meeting-minutes"] .mm-s-todo th:nth-child(1){ width:8%; }
  [data-app="meeting-minutes"] .mm-s-todo th:nth-child(3){ width:17%; }
  [data-app="meeting-minutes"] .mm-s-todo th:nth-child(4){ width:20%; }
  [data-app="meeting-minutes"] .mm-s-todo .c{ text-align:center; }
  [data-app="meeting-minutes"] .mm-s-todo td:nth-child(4){ white-space:nowrap; }   /* 기한(「2027년 1월 4일(월)」)이 두 줄로 갈라지지 않게 — 모자라면 할 일 칸이 양보 */
  [data-app="meeting-minutes"] .mm-s-none{ margin:0; color:#444; }
}
