/* 두 문서 달라진 곳 찾기 */
[data-app="text-diff"]{ display:flex; flex-direction:column; gap:10px; }
[data-app="text-diff"] .td-in{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
[data-app="text-diff"] .td-box{ display:flex; flex-direction:column; gap:4px; min-width:0; }
[data-app="text-diff"] .td-lab{ display:flex; align-items:baseline; flex-wrap:wrap; gap:2px 6px; font-size:13.5px; }
[data-app="text-diff"] .td-lab b{ font-weight:800; color:#1A1A1A; }
[data-app="text-diff"] .td-lab .td-n{ margin-left:auto; font-variant-numeric:tabular-nums; }
[data-app="text-diff"] .td-lab .td-n.over{ color:#B42318; font-weight:800; }
[data-app="text-diff"] textarea.ndt-in.td-ta{ min-height:120px; height:190px; resize:vertical; font-size:14px; line-height:1.6; }
[data-app="text-diff"] .td-tools{ justify-content:flex-end; }
/* 비우기 확인: 공통 런타임이 단추 폭을 고정해 「한 번 더 누르면 비워요」가 네 줄로 접힘 → 한 줄로 늘림
   (컴퓨터는 오른쪽 끝, 폰은 왼쪽 끝이 그대로라 두 번째 누름이 같은 단추에 닿음) */
[data-app="text-diff"] .td-tools .td-clear.ndt-arm{ width:auto !important; white-space:nowrap; }
[data-app="text-diff"] .td-res{ display:flex; flex-direction:column; gap:8px; padding-top:10px; border-top:1px solid #EEF0F3; min-width:0; }
[data-app="text-diff"] .td-sum{ display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 10px; }
[data-app="text-diff"] .td-cnt{ margin:0; font-size:19px; font-weight:900; letter-spacing:-.01em; color:#1A1A1A; }
[data-app="text-diff"] .td-sub{ margin:0; }
[data-app="text-diff"] .td-opts{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
[data-app="text-diff"] .td-seg{ display:inline-flex; flex:none; border:1px solid #D9DCE1; border-radius:10px; overflow:hidden; background:#fff; }
[data-app="text-diff"] .td-sb{ min-height:40px; padding:0 12px; border:0; background:#fff; color:#4B5059; font-size:13.5px; font-weight:700; cursor:pointer; white-space:nowrap; }
[data-app="text-diff"] .td-sb + .td-sb{ border-left:1px solid #D9DCE1; }
[data-app="text-diff"] .td-sb[aria-pressed="true"]{ background:#1A1A1A; color:#fff; }
[data-app="text-diff"] .td-only{ display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:0 4px; font-size:14px; font-weight:700; color:#1A1A1A; cursor:pointer; white-space:nowrap; }
[data-app="text-diff"] .td-only input{ width:18px; height:18px; margin:0; accent-color:#1A1A1A; cursor:pointer; }
[data-app="text-diff"] .td-copy{ margin-left:auto; }
[data-app="text-diff"] .td-leg{ margin:0; line-height:1.7; }
[data-app="text-diff"] .td-out{ max-height:460px; overflow:auto; padding:10px 12px; border:1px solid #E6E7EB; border-radius:10px; background:#FCFCFD; font-size:14.5px; line-height:1.75; color:#1A1A1A; transition:opacity .15s; }
[data-app="text-diff"].td-busy .td-out{ opacity:.5; }
[data-app="text-diff"] .td-ln{ display:flex; gap:8px; min-height:1.75em; border-radius:4px; }
[data-app="text-diff"] .td-tx{ flex:1 1 auto; min-width:0; white-space:pre-wrap; overflow-wrap:anywhere; tab-size:4; }
[data-app="text-diff"] textarea.td-ta{ tab-size:4; }
[data-app="text-diff"] .td-no{ flex:none; min-width:2.2em; padding-top:.2em; text-align:right; font-size:12px; color:#8A8F98; font-variant-numeric:tabular-nums; user-select:none; }
[data-app="text-diff"] .td-no.d{ color:#B42318; }
[data-app="text-diff"] .td-mk{ flex:none; width:1em; text-align:center; font-weight:900; user-select:none; }
[data-app="text-diff"] .td-d{ background:#FDECEC; }
[data-app="text-diff"] .td-i{ background:#E3F4E8; }
[data-app="text-diff"] .td-d .td-mk{ color:#B42318; }
[data-app="text-diff"] .td-i .td-mk{ color:#0B6B33; }
[data-app="text-diff"] del{ padding:0 1px; border-radius:3px; background:#FBDADA; color:#9F1C1C; text-decoration:line-through; text-decoration-thickness:1.5px; }
[data-app="text-diff"] ins{ padding:0 1px; border-radius:3px; background:#CDEFD8; color:#0A5C2C; text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:3px; }
[data-app="text-diff"] .td-d del, [data-app="text-diff"] .td-i ins{ padding:0; background:transparent; }
/* 화면 읽기 프로그램용 말(눈에는 안 보임): 지운 곳·더한 곳의 시작과 끝 */
[data-app="text-diff"] .td-out del::before, [data-app="text-diff"] .td-out del::after, [data-app="text-diff"] .td-out ins::before, [data-app="text-diff"] .td-out ins::after{ position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
[data-app="text-diff"] .td-out del::before{ content:" [지운 곳: "; }
[data-app="text-diff"] .td-out ins::before{ content:" [더한 곳: "; }
[data-app="text-diff"] .td-out del::after, [data-app="text-diff"] .td-out ins::after{ content:"] "; }
[data-app="text-diff"] .td-ws{ padding:0 3px; font-size:.85em; text-decoration:none; }
[data-app="text-diff"] .td-empty{ color:#8A8F98; font-size:12.5px; }
[data-app="text-diff"] .td-gap{ margin:4px 0; padding:1px 0; border-top:1px dashed #E3E5E8; border-bottom:1px dashed #E3E5E8; text-align:center; font-size:12.5px; color:#8A8F98; }
[data-app="text-diff"] .td-ph{ margin:0; padding:18px 0; text-align:center; color:#8A8F98; font-size:13.5px; }
[data-app="text-diff"] .td-lg{ padding:0 5px; border-radius:4px; font-weight:700; }
[data-app="text-diff"] .td-lg.i{ background:#E3F4E8; color:#0A5C2C; }
[data-app="text-diff"] .td-lg.d{ background:#FDECEC; color:#9F1C1C; }
[data-app="text-diff"] .td-note{ margin:0; }
[data-app="text-diff"] .td-note.td-warn{ padding:6px 10px; border-radius:8px; background:#FDECEC; color:#9F1C1C; font-weight:700; }
@media (max-width:640px){
  [data-app="text-diff"] .td-in{ grid-template-columns:minmax(0,1fr); }
  [data-app="text-diff"] textarea.ndt-in.td-ta{ height:140px; font-size:16px; } /* 아이폰: 16px 미만 입력 칸은 누르면 화면이 확대됨 */
  [data-app="text-diff"] .td-out{ max-height:400px; padding:8px 10px; font-size:14px; }
  [data-app="text-diff"] .td-copy{ margin-left:0; }
  [data-app="text-diff"] .td-tools{ justify-content:flex-start; }
}
/* 인쇄(Ctrl·⌘+P): 결과만 — 입력 칸(잘려 찍힘)·단추는 빼고, 결과 상자는 끝까지 · 초록·빨강은 배경 인쇄를 꺼도 보이게 */
@media print{
  [data-app="text-diff"] .td-in, [data-app="text-diff"] .td-tools, [data-app="text-diff"] .td-seg, [data-app="text-diff"] .td-only, [data-app="text-diff"] .td-copy, [data-app="text-diff"] textarea.ndt-fb, [data-app="text-diff"] .td-note{ display:none !important; }
  [data-app="text-diff"] .td-res{ border-top:0; padding-top:0; }
  [data-app="text-diff"] .td-out{ max-height:none; overflow:visible; border-color:#C9CDD4; }
  [data-app="text-diff"] .td-out *{ outline:none !important; }
  [data-app="text-diff"] del, [data-app="text-diff"] ins, [data-app="text-diff"] .td-d, [data-app="text-diff"] .td-i, [data-app="text-diff"] .td-lg{ -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  [data-app="text-diff"] .td-ln{ break-inside:avoid; }
}
