/* 내 책상 · 팀 보기 (2026-09-27 개편 1차). 색은 전부 style.css/bench.css의 이름표를 쓴다 —
   작업대 얼굴이든 옛 얼굴이든 그 자리의 색을 그대로 받는다. 클래스는 dk- 로 시작한다. */

.dk-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:28px}
.dk-head .date{margin-bottom:8px}
.dk-head h1{line-height:1.2}
.dk-meters{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,1fr);gap:16px}
.dk-meter{background:var(--surface-2);border-radius:var(--radius);padding:16px 20px;min-width:0}
.dk-m-l{font-size:12px;color:var(--text-muted)}
.dk-m-v{font-size:15px;color:var(--text-secondary);margin-top:6px;font-variant-numeric:tabular-nums}
.dk-m-v b{font-size:26px;color:var(--text-primary);font-weight:600}
.dk-mini{height:4px;background:var(--surface-1);border-radius:2px;overflow:hidden;margin-top:6px}
.dk-mini i{display:block;height:100%;background:var(--fill-accent);transition:width .45s cubic-bezier(.2,.8,.2,1)}

.dk-sec{margin-top:30px}
.dk-sec h2{font-size:18px;margin:0 0 10px;font-weight:600}
.dk-dim{color:var(--text-muted);font-size:12px;font-weight:400}
.dk-empty{color:var(--text-muted);font-size:14px;padding:14px 0}
.dk-note{font-size:13px;color:var(--text-warning);background:var(--bg-warning);border-radius:8px;padding:8px 12px;margin-bottom:8px}
.dk-sub2{font-size:12px;color:var(--text-muted);margin:16px 0 4px}

/* 체크 한 줄 */
.dk-ck{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:0.5px solid var(--border);font-size:14px}
.dk-ck.d1{padding-left:22px;border-top:none}.dk-ck.d2{padding-left:42px;border-top:none;font-size:13px}
.dk-t{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px}
.dk-ck .t{transition:color .25s}
.dk-ck.done .t{color:var(--text-muted);text-decoration:line-through;text-decoration-thickness:1.5px}
.dk-box{width:22px;height:22px;flex-shrink:0;border:1.5px solid var(--border-strong);border-radius:6px;background:transparent;
  color:transparent!important;font-size:13px;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}
.dk-ck.done .dk-box{background:var(--fill-accent);border-color:var(--fill-accent);color:var(--on-accent)!important}
.dk-box:hover{border-color:var(--fill-accent)}
.dk-ck.pop .dk-box{animation:dkPop .42s cubic-bezier(.3,1.6,.5,1)}
@keyframes dkPop{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
.dk-ck.pop.done{animation:dkFlash .45s ease-out}
@keyframes dkFlash{0%{background:rgba(242,194,48,.35)}100%{background:transparent}}
.dk-star{background:none;border:0;padding:2px 4px;font-size:17px;line-height:1;color:var(--border-strong);cursor:pointer}
.dk-star.on{color:#d9a400}
.dk-star:hover{color:#d9a400}
.dk-src{font-size:12px;color:var(--text-muted);text-decoration:none}
.dk-src:hover{text-decoration:underline}
.dk-tag{font-size:11px;color:var(--text-accent);background:var(--bg-accent);border-radius:4px;padding:1px 6px}
.dk-who{font-size:11px;color:var(--text-muted);white-space:nowrap}

/* 오늘 칸 */
.dk-today{background:var(--surface-2);border-radius:14px;padding:18px 20px 10px}
.dk-today h2{margin-bottom:4px}
.dk-alldone{display:none;margin:10px 0 6px;font-size:14px;color:var(--text-success);font-weight:500}
.dk-today.all .dk-alldone{display:block;animation:dkIn .5s ease-out}
@keyframes dkIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

/* 아이템 카드 */
/* 카드 높이가 제각각이라 격자로 두면 짧은 카드 아래가 비었다 — 신문 단처럼 흘려 빈칸을 없앤다(2026-09-28) */
.dk-cards{columns:360px;column-gap:14px}
.dk-cards>.dk-card{break-inside:avoid;margin-bottom:14px;display:block}
.dk-card{background:var(--surface-2);border-radius:14px;padding:18px 20px 14px;scroll-margin-top:90px}
.dk-card:target{box-shadow:0 0 0 2px var(--fill-accent)}
.dk-card-h{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.dk-name{font-size:16px;font-weight:600;color:var(--text-primary);text-decoration:none;line-height:1.35}
.dk-name:hover{text-decoration:underline}
.dk-stage{font-size:12px;color:var(--text-secondary);margin:6px 0 6px}
.dk-next{font-size:12px;color:var(--text-muted);margin-top:4px;min-height:14px}
.dk-sub{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary);margin-top:14px}
.dk-cnt{font-variant-numeric:tabular-nums}
.dk-add input{width:100%;border:0;border-top:0.5px solid var(--border);border-radius:0;background:none;padding:10px 0;font-size:14px}
.dk-stdbox{margin-top:8px;border-top:0.5px solid var(--border);padding-top:8px}
.dk-stdbox summary{font-size:12px;color:var(--text-secondary);cursor:pointer;padding:4px 0}
.dk-std{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;padding:6px 0;color:var(--text-secondary)}
.dk-std.hit{color:var(--text-muted)}
.dk-lk{font-size:12px;color:var(--text-accent);white-space:nowrap;cursor:pointer;background:none;border:0;padding:0}
.dk-lk:hover{text-decoration:underline}
.dk-foot{margin-top:12px;font-size:13px}
.dk-cheer{margin-top:12px;border-top:0.5px solid var(--border);padding-top:10px}

/* 주고받는 말 */
.dk-th{background:var(--surface-2);border-radius:12px;padding:12px 14px;margin-bottom:8px}
.panel .dk-th{background:var(--surface-1)}
.dk-th.s-done{opacity:.6}
.dk-th-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px}
.dk-state{margin-left:auto}
.dk-th-b{font-size:14px;margin-top:6px;line-height:1.6}
.dk-rep{font-size:13px;border-left:2px solid var(--border);padding:2px 0 2px 10px;margin-top:8px;line-height:1.55}
.dk-th-a{display:flex;gap:10px;align-items:center;margin-top:8px}
.dk-th-a button[type=submit]:not(.plain){height:30px;padding:0 14px;font-size:13px}
.dk-reply input{width:100%;margin-top:8px;font-size:13px}
.dk-comp{display:grid;grid-template-columns:auto auto 1fr auto auto;gap:8px;margin:4px 0 12px}
.dk-cheer .dk-comp{grid-template-columns:auto auto 1fr auto}
.dk-comp select,.dk-comp input{font-size:13px}

/* Team Bench — 팀원 카드 격자(2026-09-28 승현님 "여백 디자인이 이상해"). 긴 한 줄 대신 카드로:
   이름 → 이번 주 막대 → 오늘·최근 완료 → 표시. 넓은 화면에선 3칸, 폰에선 1칸. */
.dk-wlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.dk-wrow{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"n n" "b b" "c1 c2" "t t";gap:10px 16px;
  padding:16px 18px;background:var(--surface-2);border-radius:14px;text-decoration:none;color:inherit;align-content:start}
.dk-wrow:hover{box-shadow:0 0 0 1px var(--border-strong)}
.dk-wrow>:nth-child(1){grid-area:n}.dk-wrow>:nth-child(2){grid-area:b}
.dk-wrow>:nth-child(3){grid-area:c1}.dk-wrow>:nth-child(4){grid-area:c2}.dk-wrow>:nth-child(5){grid-area:t}
.dk-w-n{font-size:17px;font-weight:600;display:flex;align-items:baseline;gap:8px}
.dk-w-n .dk-dim{font-weight:400}
.dk-w-c{font-variant-numeric:tabular-nums;font-size:16px}
.dk-w-t{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-start;min-height:0}
.dk-w-t:empty{display:none}

@media (max-width:720px){
  .dk-cards{columns:1}
  .dk-meters{width:100%}.dk-meter{flex:1;min-width:0}
  .dk-comp{grid-template-columns:1fr 1fr}.dk-comp input{grid-column:1/-1}.dk-comp button{grid-column:1/-1}
}

.dk-carry{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--text-secondary);
  background:var(--surface-1);border-radius:8px;padding:8px 12px;margin:6px 0 8px}
.dk-week textarea{width:100%;font-size:13px;margin-top:4px}
.dk-week input[type=text]{width:100%;font-size:13px;margin-top:6px}

.dk-cheers{font-size:12px;color:var(--text-secondary);white-space:nowrap}
.dk-cheers.btn{background:none;border:1px solid var(--border);border-radius:999px;padding:2px 8px;cursor:pointer;height:auto;line-height:1.4}
.dk-cheers.btn.on{background:var(--bg-warning);border-color:transparent;color:var(--text-warning)}
.dk-up{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;
  background:var(--bg-warning);border-radius:10px;font-size:13px;color:var(--text-warning)}
.dk-up button{height:32px;padding:0 14px;font-size:13px}
.dk-req{grid-template-columns:1fr auto auto}
@media (max-width:720px){.dk-req{grid-template-columns:1fr auto}}
.dk-donebox{border-top:0.5px solid var(--border)}
.dk-donebox summary{font-size:12px;color:var(--text-muted);cursor:pointer;padding:9px 0}
.dk-donebox .dk-ck:first-of-type{border-top:none}
.dk-clear{color:var(--text-success)}
.dk-wk-it{background:var(--surface-2);border-radius:12px;padding:14px 16px;margin-bottom:8px}
.dk-wk-h{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:15px}
.dk-wk-t{font-size:14px;line-height:1.65;margin-top:8px}
.dk-wk-d{margin:4px 0 0 18px;padding:0;font-size:13px;color:var(--text-secondary);line-height:1.6}
.dk-wk-g{margin-top:8px;font-size:13px;color:var(--text-accent)}
@media print{.topbar,.tabbar,.bx-top,.dk-head button{display:none!important}.page{padding-top:0!important}.dk-wk-it{break-inside:avoid}}
.dk-comp input[type=date]{font-size:13px;max-width:150px}
@media (max-width:720px){.dk-comp input[type=date]{grid-column:1/-1;max-width:none}}
.dk-jev{font-size:11px;color:#6b4e00;background:#f7e6a8;border-radius:4px;padding:1px 6px;white-space:nowrap}
.dk-group{border-top:0.5px solid var(--border);padding-top:4px;margin-top:4px}
.dk-group .dk-ck{border-top:none}
.dk-task{padding:8px 0 4px}
.dk-task-h{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.dk-task-t{font-size:14px;font-weight:600;color:var(--text-primary)}
.dk-task-n{font-size:12px;color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}
.dk-task.ok .dk-task-n{color:var(--text-success);font-weight:600}
.dk-task .dk-mini{margin-top:4px}
.dk-pics{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.dk-pic{width:120px;height:90px;object-fit:cover;border-radius:8px;border:1px solid var(--border);background:#fff;display:block}
.dk-fig{margin:0}.dk-fig figcaption{font-size:11px;color:var(--text-muted);margin-top:3px;text-align:center}
.dk-issue{font-size:12.5px;color:var(--text-secondary);margin-top:4px;line-height:1.4}
.dk-supf{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.dk-supf input,.dk-supf select,.dk-supf textarea{font-size:13px;width:100%}
.dk-f2{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.dk-gag{background:var(--surface-2);border-radius:12px;padding:0 0 6px;margin-bottom:8px}
.dk-gag .dk-stdbox{margin:0 16px}
@media (max-width:720px){.dk-f2{grid-template-columns:1fr 1fr}}
/* 주간보고 엑셀 받기 — 누르고 싶게 반짝이는 버튼 (2026-09-29 승현님) */
/* 옆 오늘·이번 주 카드와 같은 크기·모서리의 카드로 (라벨 12px + 큰 글씨) */
.dk-xls{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;gap:2px;
  padding:16px 20px;min-width:0;box-sizing:border-box;border-radius:var(--radius);
  background:linear-gradient(120deg,#ff7a45,#ff4d8d 45%,#7c5cff 80%,#ff7a45);background-size:250% 100%;
  color:#fff!important;text-decoration:none;white-space:nowrap;
  box-shadow:0 4px 14px rgba(255,77,141,.35);animation:xlsFlow 6s ease-in-out infinite;transition:transform .18s ease,box-shadow .18s ease}
.dk-xls::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.6) 50%,transparent 60%);background-size:300% 100%;
  animation:xlsShine 3s ease-in-out infinite}
.dk-xls .dk-xls-l,.dk-xls .dk-xls-t{position:relative;z-index:1}
.dk-xls .dk-xls-l{font-size:12px;opacity:.9}
.dk-xls .dk-xls-t{font-size:17px;line-height:1.3;font-weight:600}
.dk-xls .sp{position:absolute;z-index:2;pointer-events:none;font-style:normal;line-height:1;color:#ffb800;
  text-shadow:0 0 6px rgba(255,184,0,.8),0 0 1px #b36b00;animation:xlsTw 1.8s ease-in-out infinite}
.dk-xls .s1{top:-7px;left:6px;font-size:11px;--dx:-10px;--dy:-12px}
.dk-xls .s2{top:-9px;right:12px;font-size:13px;animation-delay:.5s;--dx:8px;--dy:-14px}
.dk-xls .s3{bottom:-8px;left:42%;font-size:9px;animation-delay:1s;--dx:-4px;--dy:13px}
.dk-xls .s4{bottom:-6px;right:-5px;font-size:12px;animation-delay:1.3s;--dx:12px;--dy:8px}
.dk-xls:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 8px 22px rgba(255,77,141,.5)}
.dk-xls:hover .sp{animation:xlsPop .7s ease-out infinite}
.dk-xls:active{transform:scale(.97)}
.dk-xls:focus-visible{outline:2px solid #7c5cff;outline-offset:3px}
@keyframes xlsFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes xlsShine{0%{background-position:150% 0}60%,100%{background-position:-50% 0}}
@keyframes xlsTw{0%,100%{opacity:.2;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(45deg)}}
@keyframes xlsPop{0%{opacity:1;transform:translate(0,0) scale(.8)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.5) rotate(90deg)}}
@media (prefers-reduced-motion:reduce){.dk-xls,.dk-xls::before,.dk-xls .sp,.dk-xls:hover .sp{animation:none}.dk-xls .sp{opacity:.85}}
.dk-photo{margin-top:8px}.dk-photo label{cursor:pointer}
.dk-memo{flex-basis:100%;font-size:12px;color:var(--text-accent)}
.dk-memo.empty{display:none}
.dk-mbtn{background:none;border:1px solid var(--border);border-radius:6px;font-size:11px;padding:1px 6px;color:var(--text-muted);cursor:pointer;height:auto}
.dk-mbtn:hover{color:var(--text-primary);border-color:var(--border-strong)}

/* 과제·액션 추가/고치기 (2026-09-27 인터페이스 다듬기) */
.dk-group{position:relative}
.dk-task.solo{padding:0}
.dk-task.solo .dk-ck{border-top:none}
.dk-task.solo .t{font-weight:600}
.dk-plus{margin:2px 0 6px 32px}
.dk-plus summary{font-size:12.5px;color:var(--text-accent);cursor:pointer;padding:6px 0;list-style:none}
.dk-plus summary::-webkit-details-marker{display:none}
.dk-addf{display:flex;gap:6px;margin:4px 0}
.dk-addf input{flex:1;min-width:0;font-size:13.5px;height:36px}
.dk-addf button{height:36px;padding:0 14px;font-size:13px;white-space:nowrap}
.dk-newtask{margin-top:10px;border-top:0.5px solid var(--border);padding-top:10px}
.dk-more{position:relative;flex-shrink:0}
.dk-more summary{list-style:none;cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center;
  border-radius:8px;color:var(--text-muted);font-size:18px;line-height:1}
.dk-more summary::-webkit-details-marker{display:none}
.dk-more summary:hover,.dk-more[open] summary{background:var(--surface-1);color:var(--text-primary)}
.dk-more-p{position:absolute;right:0;top:34px;z-index:20;width:300px;background:var(--surface-2);border:1px solid var(--border);
  border-radius:12px;padding:12px;box-shadow:0 8px 24px rgba(30,34,38,.14);display:flex;flex-direction:column;gap:6px}
.dk-more-p label{font-size:12px;color:var(--text-secondary);margin-top:4px}
.dk-inl{display:flex;gap:6px}.dk-inl input{flex:1;min-width:0;font-size:13px;height:34px}.dk-inl button{height:34px;padding:0 12px;font-size:12.5px}
.dk-del{color:var(--text-danger);font-size:12.5px;align-self:flex-start;margin-top:4px;cursor:pointer}
.dk-task-h .dk-more{margin-left:4px}
.dk-nextwk .dk-group{opacity:.95}
@media (max-width:720px){
  .dk-box{width:28px;height:28px}
  .dk-star{font-size:22px;padding:6px}
  .dk-more summary{width:36px;height:36px}
  .dk-more-p{width:min(320px,calc(100vw - 48px))}
  .dk-meters{display:grid;grid-auto-flow:row;grid-template-columns:1fr 1fr;gap:10px}
  .dk-meters .dk-xls{display:none} /* 폰에서 엑셀 받아도 쓸 데가 없다 (2026-09-29 승현님) */
  .dk-m-l{white-space:nowrap}
  .dk-plus{margin-left:0}
}
.dk-more-p .dk-del{color:var(--text-danger);font-size:12.5px;background:none;border:0;padding:4px 0;height:auto;font-weight:400}
.dk-more-p .dk-del:hover{text-decoration:underline}
/* 지우기 요청·승인 (2026-09-27) */
.dk-ck.req .t,.dk-task.req .dk-task-t{opacity:.55;text-decoration:line-through dotted}
.dk-reqtag{display:inline-block;margin-left:6px;font-size:12px;padding:1px 7px;border-radius:9px;background:#fbe7c6;color:#8a5200}
.dk-reqbox{font-size:13px;color:#8a5200;background:#fdf3e1;border-radius:8px;padding:6px 8px;margin-top:6px}
.dk-delsec{border:1.5px solid #e9b35a;border-radius:12px;padding:12px 14px;background:#fffaf0}
.dk-delreq{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:8px 0;border-top:1px solid #eee2c8}
.dk-delreq:first-of-type{border-top:0}
.dk-delreq .dk-reason{font-size:13px;color:#6b4a10;margin-top:2px}
.dk-delreq-a{display:flex;gap:6px;flex-shrink:0}
.dk-hist{padding:6px 0;border-top:1px solid #eee;font-size:14px}
.dk-hist:first-of-type{border-top:0}
@media (max-width:640px){.dk-delreq{flex-direction:column;align-items:stretch}.dk-delreq-a button{min-height:40px;flex:1}.dk-delreq-a form{flex:1}.dk-delreq-a{width:100%}}
.dk-group:has(.dk-task.req) .dk-ck .t{opacity:.55;text-decoration:line-through dotted}
/* 클레어 제안 (2026-09-28) */
.dk-sgbox{margin:12px 0 4px;border:1.5px dashed #9fb3c8;border-radius:12px;padding:10px 12px;background:#f5f8fb}
.dk-sgh{font-weight:600;font-size:14px;margin-bottom:4px}
.dk-sg{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-top:1px solid #e3e9ef}
.dk-sgh+.dk-sg{border-top:0}
.dk-sg .t{font-size:14.5px}
.dk-sgsrc{display:inline-block;margin-left:6px;font-size:11.5px;padding:1px 7px;border-radius:9px;background:#e1e8ef;color:#2f4a60}
.dk-sgmiss{display:inline-block;margin-left:4px;font-size:11.5px;padding:1px 7px;border-radius:9px;background:#fbe7c6;color:#8a5200}
.dk-sgwhy{font-size:12.5px;color:#6b737a;margin-top:2px}
.dk-sga{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-start}
.dk-sga button{font-size:13px;padding:5px 10px}
.dk-sgmore summary{cursor:pointer;font-size:13px;color:#2f4a60;padding:6px 0}
@media (max-width:640px){.dk-sg{flex-direction:column}.dk-sga{width:100%;justify-content:flex-start}.dk-sga button{min-height:38px;flex:1}}
.dk-benchsub{font-size:13px;color:#6b737a;margin-top:8px}
/* 저장 실패 알림 (2026-09-28) */
.dk-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%) translateY(20px);background:#b3261e;color:#fff;padding:12px 18px;border-radius:12px;
  font-size:14px;box-shadow:0 6px 20px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:999;max-width:calc(100% - 32px)}
.dk-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
/* 다음 주 계획 — 펼쳐 둠 (2026-09-28) */
.dk-nextwk2{margin-top:14px;padding-top:12px;border-top:1.5px dashed var(--border,#d6d9db)}
/* 카드 제품 사진 (2026-09-28) */
.dk-cphotos{display:flex;gap:6px;margin:8px 0 4px}
.dk-cphotos a{flex:0 0 auto}
.dk-cphotos img{width:72px;height:54px;object-fit:cover;border-radius:8px;border:1px solid var(--border,#d6d9db);background:#fff}
.dk-tag.carry{background:#fdf0d8;color:#8a5200}
/* 먼저 정해 주세요 (2026-09-28) */
.dk-decsec{border:1.5px solid #9fb3c8;border-radius:14px;padding:14px 16px;background:#f3f7fb}
.dk-decide{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:9px 0;border-top:1px solid #dfe7ef}
.dk-decsec h2+.note+.dk-decide{border-top:0}
.dk-decide .t{font-weight:600;color:inherit;text-decoration:none}
.dk-decide-f{display:flex;gap:6px;flex-shrink:0}
.dk-decide-f select{font-size:13px;padding:6px 8px;max-width:220px}
.dk-decide-f button{font-size:13px;padding:6px 12px;background:#2f4a60;color:#fff;border:0;border-radius:8px;cursor:pointer}
.dk-decide-a{font-size:13px;color:#2f4a60;font-weight:600;white-space:nowrap}
@media (max-width:640px){.dk-decide{flex-direction:column;align-items:stretch}.dk-decide-f select{flex:1;max-width:none}}
/* 먼저 정해 주세요 — 줄마다 오른쪽 선택칸 자리를 같게, 버튼 글자 한 줄 (2026-09-28 승현님 "간격이 엉망") */
.dk-decide{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:center}
.dk-decide .dk-t{display:block;min-width:0}
.dk-decide .dk-t .t{display:block;line-height:1.35}
.dk-decide .dk-t .dk-dim{display:block;margin-top:2px}
.dk-decide-f{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%}
.dk-decide-f select{max-width:none;height:38px;padding:0 10px;font-size:14px}
.dk-decide-f button{height:38px;white-space:nowrap;padding:0 14px;font-size:14px}
.dk-decide-a{justify-self:end}
@media (max-width:640px){.dk-decide{grid-template-columns:1fr;gap:8px}.dk-decide-a{justify-self:start}}
/* 업무표준 목록 정렬 (2026-09-28) */
.dk-std{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:7px 0;border-bottom:0.5px solid var(--border)}
.dk-std:last-child{border-bottom:0}
.dk-std-t{min-width:0;line-height:1.45}
.dk-std-t .dk-tag{margin:0 6px 0 0;vertical-align:1px}
.dk-std-act{display:flex;gap:6px;justify-content:flex-end}
.dk-std-act form.inline{margin:0;display:block}
.dk-std-act .dk-lk{height:28px;padding:0 10px;border:1px solid #d3d9de;border-radius:8px;background:#fff;color:#1e2226;font-size:12px}
.dk-std-act .dk-lk:hover{background:#f2f5f7;text-decoration:none}
.dk-std-act form:first-child .dk-lk{border-color:#2f4a60;color:#2f4a60;font-weight:600}
@media (max-width:640px){.dk-std{grid-template-columns:1fr;gap:6px}.dk-std-act{justify-content:flex-start}}
.bx .dk-std-act button.plain.dk-lk{border:1px solid #d3d9de;padding:0 10px;background:#fff}
.bx .dk-std-act form:first-child button.plain.dk-lk{border-color:#2f4a60}
/* 지원·가공 업무 입력칸 (2026-09-28) */
.dk-supf{gap:12px;margin-top:10px;padding:14px;border-radius:12px;background:var(--surface-1,#f5f6f7)}
.dk-f4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dk-f2w{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dk-fl{display:flex;flex-direction:column;gap:4px;min-width:0;margin:0}
.dk-fl>span{font-size:12px;color:var(--text-secondary);font-weight:500}
.bx .dk-supf input,.bx .dk-supf select,.bx .dk-supf textarea,.dk-supf input,.dk-supf select,.dk-supf textarea{
  box-sizing:border-box;width:100%;height:38px;padding:0 10px;border:1px solid #d3d9de;border-radius:8px;
  background:#fff;color:#1e2226;font:inherit;font-size:13px;margin:0}
.dk-supf textarea{height:auto;min-height:84px;padding:8px 10px;line-height:1.5;resize:vertical}
.dk-supf input:focus,.dk-supf select:focus,.dk-supf textarea:focus{outline:none;border-color:#2f4a60;box-shadow:0 0 0 3px rgba(47,74,96,.12)}
.dk-supf input::placeholder,.dk-supf textarea::placeholder{color:#a3abb2}
.dk-supf-ft{display:flex;justify-content:flex-end}
.bx .dk-supf-ft button,.dk-supf-ft button{height:38px;padding:0 20px;border:0;border-radius:8px;background:#2f4a60;color:#fff;font-size:14px;font-weight:600;cursor:pointer}
.dk-supf-ft button:hover{background:#243a4c}
@media (max-width:640px){.dk-f4{grid-template-columns:1fr 1fr}.dk-f2w{grid-template-columns:1fr}}
.bx form.dk-supf .dk-supf-ft button[type=submit]:not(.plain){background:#2f4a60;color:#fff;height:38px;padding:0 20px;border-radius:8px}
.bx form.dk-supf .dk-supf-ft button[type=submit]:not(.plain):hover{background:#243a4c}
/* 2026-09-29 승현님 '한쪽만 이상하게 길어': 신문 단 흘리기는 카드가 한 단에 몰리고 읽는 순서가 위→아래로 뒤섞였다.
   2줄 바둑판으로 — 왼쪽→오른쪽 순서, 넓은 폭이라 줄바뀜이 줄어 카드 길이도 비슷해진다. */
.dk-cards{columns:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.dk-cards>.dk-card{margin-bottom:0;break-inside:auto}
@media (max-width:900px){.dk-cards{grid-template-columns:1fr}}
.dk-cards{align-items:stretch}
/* UI 점검 반영 (2026-09-29, ui-ux-pro-max: 이름표·누름칸·글자·아이콘) */
.dk-addf{align-items:center}
.dk-flab{flex:0 0 auto;font-size:12.5px;font-weight:600;color:var(--text-secondary);min-width:64px}
.dk-box{width:26px;height:26px}
.dk-star{min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center}
.dk-more>summary{min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center}
.dk-sgsrc,.dk-sgmiss{font-size:12px}
.dk-tag{font-size:12px}
.dk-photo-l{display:inline-flex;align-items:center;gap:6px;min-height:32px}
.dk-ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}
@media (max-width:720px){.dk-flab{min-width:0}}
/* 폰 여백 넉넉하게 (2026-09-29 승현님 '여백좀') — 안쪽 상자를 겹겹이 들여쓰지 않고 위아래 숨 쉴 틈을 준다 */
@media (max-width:720px){
  .bx .page{padding-inline:20px}
  .dk-head{margin-bottom:24px}
  .dk-meters{gap:12px}
  .dk-sec{margin-top:40px}
  .dk-sec h2{margin-bottom:14px}
  .dk-cards{gap:20px}
  .dk-card{padding:24px 20px 20px}
  .dk-ck{padding-top:14px;padding-bottom:14px}
  .dk-ck.d1{padding-left:6px}.dk-ck.d2{padding-left:22px}
  .dk-sga button{white-space:nowrap}.dk-sga button:first-child{flex-basis:100%}
  .dk-sgbox{padding:14px 12px}
  .dk-sg{padding:14px 0}
  .dk-sgbox{margin:18px 0 8px}
  .dk-newtask{padding-top:16px;margin-top:14px}
  .dk-plus{margin:6px 0 10px}
}
/* 누르는 것은 큼직하게, 참고 글자만 작게 (2026-09-29 승현님: '눌러야 되는 텍스트가 너무너무 작아')
   기준: 누르는 것 글자 15px·높이 36px 이상, 폰 44px. 이름표·안내 같은 참고 글자는 그대로 12~13px. */
.dk-more summary{width:36px;height:36px}
.dk-star{min-width:36px;min-height:36px}
.dk-inl input,.dk-inl button{height:38px;font-size:15px}
.bx .dk-more-p button.plain.dk-del,.dk-more-p .dk-del{font-size:15px;padding:8px 0}
.dk-plus summary,.dk-sgmore summary,.dk-stdbox summary{font-size:15px;padding:8px 0}
.dk-addf input,.dk-addf button{height:40px;font-size:15px}
.dk-sga button{font-size:15px;min-height:38px;padding:6px 14px}
.bx .dk-std-act button.plain.dk-lk,.dk-std-act .dk-lk{font-size:15px;height:36px;padding:0 14px}
.bx .dk-supf select,.bx .dk-supf input,.bx .dk-supf textarea,.bx .dk-comp select{font-size:15px}
.bx .dk-supf select{min-height:40px}
.bx .dk-supf-ft button{font-size:15px}
.dk-comp select,.dk-comp input,.dk-comp button{font-size:15px;min-height:42px}
.dk-supf input,.dk-supf select,.dk-supf textarea,.dk-supf button{font-size:15px}
.dk-supf select,.dk-supf button{min-height:40px}
.dk-mbtn{font-size:13.5px;padding:5px 10px}
@media (max-width:720px){
  .dk-sga button,.dk-addf button,.dk-addf input,.dk-comp select,.dk-comp button,.dk-supf button{min-height:44px}
  .dk-plus summary,.dk-sgmore summary,.dk-stdbox summary{padding:12px 0}
  .dk-more summary{width:44px;height:44px}
}
.dk-lk2{font-size:15px;font-weight:600;color:var(--text-accent)}
/* 별 (sparkle.js) — 평소엔 흐리고 느리게, 마우스를 올리면 불꽃처럼 */
@keyframes xlsIdle{0%,100%{opacity:0;transform:scale(.4) rotate(0)}50%{opacity:.55;transform:scale(.9) rotate(25deg)}}
.dk-xls:hover .sp{animation:none;opacity:0}
.dk-xls .sp-fire{position:absolute;z-index:3;pointer-events:none;font-style:normal;line-height:1;
  text-shadow:0 0 8px rgba(255,200,0,.95),0 0 2px #fff;animation:xlsFire .6s cubic-bezier(.15,.8,.3,1) forwards}
@keyframes xlsFire{0%{opacity:1;transform:translate(0,0) scale(.3) rotate(0)}
  30%{opacity:1;transform:translate(calc(var(--dx)*.45),calc(var(--dy)*.45)) scale(1.3) rotate(calc(var(--rot)*.4))}
  100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.5) rotate(var(--rot))}}
/* 평소엔 색 흐름도 느릿하게, 올리면 빨라지고 빛이 세진다 */
.dk-xls{animation-duration:9s}
.dk-xls:hover{animation-duration:1.6s;box-shadow:0 10px 30px rgba(255,77,141,.6),0 0 22px rgba(255,190,60,.45)}
.dk-xls:hover::before{animation-duration:.9s}

/* 1차 점검 반영 (2026-09-30 밤) */
.dk-cards > .dk-card:only-child{grid-column:1/-1}            /* 아이템이 하나면 오른쪽 절반을 비우지 않는다 */
.dk-task-h .dk-task-n{margin-left:auto}                         /* '액션 0/1'을 가운데 띄우지 않고 오른쪽 ⋯ 옆에 */
.dk-more summary{color:var(--text-secondary)}                    /* ⋯가 옅어 안 보이던 것 */
.dk-more summary:hover{color:var(--text-primary)}
@media (max-width:720px){
  /* 폰에서 ⋯ 창이 화면 왼쪽 밖으로 잘리던 것 — 화면 아래 판으로 띄운다 */
  .dk-more-p{position:fixed;left:16px;right:16px;top:auto;bottom:88px;width:auto;max-height:60vh;overflow:auto}
  .dk-box{width:32px;height:32px}
  .dk-star{min-width:40px;min-height:40px}
}
.dk-due{display:flex;align-items:center;gap:6px;white-space:nowrap}.dk-due span{font-size:13px;color:var(--text-muted)}
.dk-plan summary{font-size:14px;color:var(--text-accent);cursor:pointer;padding:6px 0}
.dk-plan[open] summary{margin-bottom:4px}
/* 2차 점검 */
.dk-jump{position:static;margin:0 0 12px;flex-wrap:wrap;overflow:visible}
.dk-card{scroll-margin-top:84px}
.dk-newtask.dk-plus{margin:6px 0 0}
.dk-nextwk2 .dk-plus{margin:8px 0 0}
@media (max-width:720px){.dk-today-empty{display:none}}
