/* 반복 업무 체크리스트 */
[data-app="routine-checklist"]{ display:flex; flex-direction:column; gap:10px; }
[data-app="routine-checklist"] .rc-top{ display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; gap:2px 10px; }
[data-app="routine-checklist"] .rc-date{ margin:0; font-size:17px; font-weight:900; letter-spacing:-.02em; color:#1A1A1A; }
[data-app="routine-checklist"] .rc-sum{ margin:0; font-size:13px; font-weight:800; color:#314B86; font-variant-numeric:tabular-nums; }
[data-app="routine-checklist"] .rc-bar{ height:6px; margin-top:-4px; border-radius:3px; background:#ECEEF2; overflow:hidden; }
[data-app="routine-checklist"] .rc-fill{ height:100%; width:0; background:#0D7A43; transition:width .25s; }
/* 예시 안내 줄 */
[data-app="routine-checklist"] .rc-exnote{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 10px; margin:0; padding:7px 8px 7px 10px; border-radius:10px; background:#FFF7E0; color:#6B5300; font-size:12.5px; line-height:1.5; }
[data-app="routine-checklist"] .rc-exnote b{ color:#4A3800; }
[data-app="routine-checklist"] .rc-exnote .ndt-btn{ background:#fff; border-color:#E5CF8F; color:#4A3800; }
/* 오늘 할 것 */
[data-app="routine-checklist"] .rc-today{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
[data-app="routine-checklist"] .rc-it{ border:1.5px solid #E3E5EA; border-radius:12px; background:#FAFAFB; }
[data-app="routine-checklist"] .rc-it.late{ border-color:#F1B8B2; background:#FFF6F5; }
[data-app="routine-checklist"] .rc-it.done{ border-color:#D4E9DC; background:#F3F8F5; }
[data-app="routine-checklist"] .rc-lab{ position:relative; display:grid; grid-template-columns:30px minmax(0,1fr); gap:10px; align-items:center; min-height:54px; padding:8px 10px; cursor:pointer; -webkit-tap-highlight-color:transparent; }
[data-app="routine-checklist"] .rc-cb{ position:absolute; left:10px; top:50%; width:30px; height:30px; margin:-15px 0 0; opacity:0; cursor:pointer; }
[data-app="routine-checklist"] .rc-box{ display:flex; align-items:center; justify-content:center; width:30px; height:30px; border:2px solid #B9BEC7; border-radius:8px; background:#fff; }
[data-app="routine-checklist"] .rc-it.late .rc-box{ border-color:#D9645A; }
[data-app="routine-checklist"] .rc-cb:checked + .rc-box{ background:#0D7A43; border-color:#0D7A43; }
[data-app="routine-checklist"] .rc-cb:checked + .rc-box::after{ content:'✓'; color:#fff; font-size:18px; font-weight:900; line-height:1; }
[data-app="routine-checklist"] .rc-cb:focus-visible + .rc-box{ outline:3px solid #93B4F5; outline-offset:2px; }
[data-app="routine-checklist"] .rc-tx{ display:flex; flex-direction:column; gap:1px; min-width:0; }
[data-app="routine-checklist"] .rc-name{ font-size:15.5px; font-weight:800; line-height:1.35; color:#1A1A1A; overflow-wrap:anywhere; }
[data-app="routine-checklist"] .rc-it.done .rc-name{ color:#8A8F98; text-decoration:line-through; text-decoration-thickness:2px; text-decoration-color:#0D7A43; }
[data-app="routine-checklist"] .rc-meta{ font-size:12.5px; line-height:1.5; color:#6B717B; overflow-wrap:anywhere; }
[data-app="routine-checklist"] .rc-late{ display:inline-block; padding:0 7px; border-radius:6px; background:#B42318; color:#fff; font-size:12px; font-weight:800; }
[data-app="routine-checklist"] .rc-due{ color:#B42318; font-weight:600; }
[data-app="routine-checklist"] .rc-miss{ color:#8A4B00; }
[data-app="routine-checklist"] .rc-ok{ color:#0D7A43; font-weight:700; }
[data-app="routine-checklist"] .rc-empty{ margin:0; padding:14px 12px; border:1.5px dashed #D3D5DA; border-radius:12px; color:#555B64; font-size:13.5px; text-align:center; }
/* 접는 칸 */
[data-app="routine-checklist"] details{ border-top:1px solid #ECEEF2; padding-top:4px; }
[data-app="routine-checklist"] summary{ display:flex; align-items:center; gap:6px; min-height:40px; font-size:14px; font-weight:800; color:#1A1A1A; cursor:pointer; list-style:none; }
[data-app="routine-checklist"] summary::-webkit-details-marker{ display:none; }
[data-app="routine-checklist"] summary:focus-visible{ outline:3px solid #93B4F5; outline-offset:2px; border-radius:6px; }
[data-app="routine-checklist"] summary, [data-app="routine-checklist"] .rc-rep, [data-app="routine-checklist"] .rc-day{ -webkit-tap-highlight-color:transparent; }
/* 펼침 화살표는 꾸밈 — 화면 읽기 프로그램이 「▸」를 읽지 않게(대체 글 빈칸, 모르는 브라우저는 앞 줄 그대로) */
[data-app="routine-checklist"] summary::before{ content:'▸'; content:'▸' / ''; display:inline-block; width:12px; color:#8A8F98; transition:transform .15s; }
[data-app="routine-checklist"] details[open] > summary::before{ transform:rotate(90deg); }
[data-app="routine-checklist"] .rc-ncount, [data-app="routine-checklist"] .rc-ecount{ font-weight:600; color:#6B717B; }
[data-app="routine-checklist"] .rc-nlist{ list-style:none; margin:0 0 6px; padding:0; display:flex; flex-direction:column; }
[data-app="routine-checklist"] .rc-nlist li{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:0 10px; padding:7px 2px; border-bottom:1px dashed #ECEEF2; }
[data-app="routine-checklist"] .rc-nlist .rc-name{ font-size:14px; font-weight:700; }
[data-app="routine-checklist"] .rc-none{ padding:6px 2px; color:#6B717B; font-size:13px; }
/* 추가 */
[data-app="routine-checklist"] .rc-form{ display:flex; flex-direction:column; gap:8px; margin:4px 0 12px; padding:10px; border-radius:12px; background:#F5F6F8; }
[data-app="routine-checklist"] .rc-new{ min-height:42px; font-size:16px; background:#fff; }
[data-app="routine-checklist"] .rc-seg{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #D9DCE1; border-radius:10px; overflow:hidden; background:#fff; }
[data-app="routine-checklist"] .rc-rep{ min-height:40px; padding:0 6px; border:0; border-right:1px solid #D9DCE1; background:#fff; color:#4B5059; font-size:14px; font-weight:800; cursor:pointer; }
[data-app="routine-checklist"] .rc-rep:last-child{ border-right:0; }
[data-app="routine-checklist"] .rc-rep[aria-pressed="true"]{ background:#1A1A1A; color:#fff; }
[data-app="routine-checklist"] .rc-od{ display:flex; align-items:center; gap:8px; min-height:40px; font-size:14px; font-weight:600; color:#333; cursor:pointer; }
[data-app="routine-checklist"] .rc-od input{ width:20px; height:20px; margin:0; accent-color:#1A1A1A; }
[data-app="routine-checklist"] .rc-days{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:4px; }
[data-app="routine-checklist"] .rc-day{ min-height:38px; padding:0; border:1px solid #D9DCE1; border-radius:8px; background:#fff; color:#4B5059; font-size:14px; font-weight:800; cursor:pointer; }
[data-app="routine-checklist"] .rc-day[aria-pressed="true"]{ background:#2563EB; border-color:#2563EB; color:#fff; }
[data-app="routine-checklist"] .rc-om{ display:flex; flex-wrap:wrap; align-items:center; gap:4px 10px; }
[data-app="routine-checklist"] .rc-domlab{ display:flex; align-items:center; gap:8px; font-size:14px; font-weight:700; }
[data-app="routine-checklist"] .rc-dom{ width:auto; min-width:96px; min-height:40px; font-size:16px; background:#fff; }
[data-app="routine-checklist"] .rc-domhint{ font-size:12px; color:#6B717B; }
[data-app="routine-checklist"] .rc-domhint:empty{ display:none; }
[data-app="routine-checklist"] .rc-add{ min-height:42px; }
[data-app="routine-checklist"] .rc-amsg{ margin:0; font-size:13px; font-weight:700; color:#314B86; overflow-wrap:anywhere; }
[data-app="routine-checklist"] .rc-amsg:empty{ display:none; }
/* 고치기·지우기 */
[data-app="routine-checklist"] .rc-rk{ margin:0 0 6px; }
[data-app="routine-checklist"] .rc-rows{ list-style:none; margin:0 0 10px; padding:0; display:flex; flex-direction:column; gap:8px; }
[data-app="routine-checklist"] .rc-rows li{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 6px; align-items:center; }
[data-app="routine-checklist"] .rc-rows .rc-et{ min-height:40px; }
[data-app="routine-checklist"] .rc-rows .rc-del{ min-width:40px; min-height:40px; }
[data-app="routine-checklist"] .rc-rows .rc-rule{ grid-column:1 / -1; padding-left:2px; font-size:12px; color:#6B717B; }
[data-app="routine-checklist"] .rc-note{ margin:8px 0 2px; }
/* 두 번 눌러 확인(NDT.confirm2): 공통 런타임이 누르기 전 폭으로 단추를 묶어 ✕(40px)에서 「한 번 / 더 / 누르면 / 지워요」 네 줄로 쪼개지고 글이 넘침(10/2 시험)
   → 이 도구에서는 확인 문구 길이만큼 넓힘(최대 11em, 넘으면 두 줄) */
[data-app="routine-checklist"] .ndt-btn.ndt-arm{ width:auto !important; max-width:min(100%, 11em); }
