:root{--ink:#111;--red:#E0472B;--blue:#4A6FA5;--ok:#2E7D5B;--line:#DADADA;--soft:#F5F5F3;--mute:#6B6B6B;--orange:#D97706}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;color:var(--ink);background:#F8F8F6;font-size:14px;line-height:1.5;padding-bottom:64px;word-break:keep-all;overflow-wrap:break-word;overflow-x:hidden}
img,svg{max-width:100%}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:9px}
.tablewrap table{min-width:520px}
header{background:var(--ink);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:60}
header h1{font-family:"Noto Serif KR",serif;font-size:16px}
header button{background:none;border:none;color:#fff;font-size:19px;cursor:pointer;padding:4px 8px;line-height:1;min-width:44px;min-height:44px}
main{max-width:720px;margin:0 auto;padding:14px}
.tab{display:none}.tab.on{display:block}
.krow{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}
.k{background:#fff;border:1px solid var(--line);padding:11px 13px}
.k b{display:block;font-size:24px;font-family:"Noto Serif KR",serif;line-height:1.2}
.k span{font-size:11.5px;color:var(--mute)}
.card{background:#fff;border:1px solid var(--line);padding:13px 15px;margin-bottom:9px;border-radius:10px}
.card h3{font-size:13.5px;font-weight:700;margin-bottom:7px}
table{width:100%;border-collapse:collapse;font-size:13px}
th,td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:var(--soft);font-weight:600;white-space:nowrap}
.s{display:inline-block;padding:1px 7px;border-radius:2px;font-size:11.5px;font-weight:700}
.done{background:#E3F1EA;color:var(--ok)}.run{background:#E8EEF7;color:var(--blue)}.blk{background:#FBE7E2;color:var(--red)}.wait{background:var(--soft);color:var(--mute)}.loc{background:#FEF3C7;color:var(--orange)}
.item{border-left:3px solid var(--line);padding:5px 11px;margin:4px 0;font-size:13px}
.item.ok{border-color:var(--ok)}.item.bad{border-color:var(--red)}.item.warn{border-color:var(--orange)}
.sec{font-family:"Noto Serif KR",serif;font-size:15px;font-weight:700;margin:16px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--ink)}
.muted{color:var(--mute);font-size:12.5px}
.empty{color:#9aa0a8;font-size:13px;padding:6px 0}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;flex-shrink:0}
.dot.초록,.dot.green{background:var(--ok)}.dot.노랑,.dot.amber{background:var(--orange)}.dot.빨강,.dot.red{background:var(--red)}.dot.gray{background:#B9B9B9}
.issue-row{display:flex;align-items:flex-start;gap:0;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px}
.issue-row:first-child{border-top:none}
.issue-row b{min-width:64px;flex-shrink:0}

/* 홈 1·2·3단(큐45-1, 09-23) — 본부(1단) > 팀(2단) > 항목(3단) 드릴다운. <details> 중첩만으로
   구현(별도 라우팅·토글 JS 없이 — 이 대시보드의 기존 순정 JS 스타일 유지). */
.dept{border:1px solid var(--line);border-radius:10px;margin-bottom:8px;overflow:hidden;background:#fff}
.dept[open]>summary{border-bottom:1px solid var(--line)}
.dept>summary{list-style:none;cursor:pointer;padding:11px 13px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-weight:700;font-size:13.5px}
.dept>summary::-webkit-details-marker{display:none}
.dept>summary .pri{font-weight:400;color:var(--mute);font-size:12px;flex:1}
.dept>summary .cnt{font-size:11.5px;color:var(--mute);font-weight:400}
.dept-collapsed{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:9px 13px;margin-bottom:8px;background:#fbfbfa;color:var(--mute);font-size:12.5px}
.dept-collapsed b{color:var(--ink);font-weight:700;font-size:13px}
.dept-body{padding:4px 13px 10px}
.team{border-top:1px solid var(--line);padding:2px 0}
.team:first-child{border-top:none}
.team>summary{list-style:none;cursor:pointer;padding:8px 2px;display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:12.5px}
.team>summary::-webkit-details-marker{display:none}
.team>summary b{font-weight:600;min-width:84px}
.team>summary .metric{color:var(--mute);flex:1}
.team.new{opacity:.5}
.team.new>summary b::after{content:' (신설)';font-weight:400;color:#9aa0a8;font-size:11px}
.team-body{padding:2px 2px 10px 24px;font-size:12.5px}
.task-row{border-left:3px solid var(--line);padding:5px 10px;margin:5px 0}
.task-row.green{border-color:var(--ok)}.task-row.amber{border-color:var(--orange)}.task-row.red{border-color:var(--red)}.task-row.gray{border-color:#B9B9B9}
.task-row .tt{font-weight:600}
.task-row .hh{color:var(--mute);font-size:12px}
.task-row a{color:var(--blue)}
.assign-row{background:#FBE7E2;border-left:3px solid var(--red);padding:6px 10px;margin:5px 0;font-size:12.5px}
.approval-row{border-top:1px solid var(--line);padding:7px 0;font-size:12.5px}
.approval-row:first-child{border-top:none}
.approval-row a{color:var(--blue);font-size:11.5px}
/* 큐45-8(09-23) — 대표 판단 대기 크게 + 판단불가사유 펼침, 이번 주 반려, 팀 마지막 갱신,
   마케팅 유일지표 크게("집계 안 됨" 붉게). */
#approvalCount{font-size:22px;font-weight:800;color:var(--red);margin-left:4px}
#approvalCount.zero{color:var(--mute)}
.approval-row>summary{list-style:none;cursor:pointer}
.approval-row>summary::-webkit-details-marker{display:none}
.approval-row>summary::after{content:' ▸ 왜 본부장이 못 정하나';color:var(--blue);font-size:11px}
.approval-row[open]>summary::after{content:' ▾'}
.approval-row .why{background:#FBE7E2;border-left:3px solid var(--red);padding:6px 10px;margin:6px 0 4px}
.approval-row .why.none{color:var(--red);font-weight:600}
.warn-head{margin-top:10px;font-weight:700;font-size:12.5px;color:var(--orange)}
.warn-row{border-left:3px solid var(--orange);padding:5px 10px;margin:5px 0;font-size:12.5px}
.warn-row.miss{border-color:var(--red);background:#FBE7E2}
.warn-row a{color:var(--blue);font-size:11.5px}
.rej{font-size:11.5px;font-weight:600;border-radius:9px;padding:1px 7px;background:#f1f1ef;color:var(--mute);white-space:nowrap}
.rej.on{background:#FFF1DE;color:var(--orange)}
.rej.miss{background:#FBE7E2;color:var(--red)}
.big-metric{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.big-metric b{font-size:22px;font-weight:800;color:var(--ink)}
.big-metric span{font-size:11.5px;color:var(--mute);font-weight:400}
.big-metric.none b{font-size:15px;color:var(--red)}
.upd{font-size:11px;color:var(--mute);white-space:nowrap}
.upd.stale{background:#ececea;color:#8a8f96;border-radius:9px;padding:1px 7px;font-weight:600}
.team.stale>summary b,.team.stale>summary .metric{color:#9aa0a8}

/* 하단 탭 4개 고정(모바일 우선) */
.bottomnav{position:fixed;left:0;right:0;bottom:0;display:flex;background:#fff;border-top:1px solid var(--line);z-index:60;padding-bottom:env(safe-area-inset-bottom)}
.bottomnav button{flex:1;border:none;background:none;font-family:inherit;font-size:12px;color:var(--mute);padding:7px 0 6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:48px}
.bottomnav button .ic{font-size:19px;line-height:1}
.bottomnav button.on{color:var(--ink);font-weight:700}

/* 설정(개발용 도구) 모달 */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:flex-end;justify-content:center;z-index:100}
.modal-overlay.on{display:flex}
.modal{background:#fff;width:100%;max-width:720px;max-height:88vh;overflow-y:auto;border-radius:16px 16px 0 0;padding:16px}
@media(min-width:760px){.modal-overlay{align-items:center}.modal{border-radius:14px;max-width:600px}}
.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.modal-head h2{font-size:15.5px}
.modal-head button{border:none;background:var(--soft);border-radius:50%;width:44px;height:44px;font-size:14px;cursor:pointer;flex-shrink:0}

/* 고객 탭(옛 /board 흡수) 공용 요소 */
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}
@media(min-width:480px){.tiles{grid-template-columns:repeat(4,1fr)}}
.tile{background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 13px}
.tile b{display:block;font-size:22px;line-height:1.2}.tile span{font-size:11.5px;color:var(--mute)}
.tile.warn b{color:var(--orange)}
.row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:9px}.row>*{flex:1;min-width:130px}
input,select{font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:8px;width:100%;background:#fff;color:var(--ink);min-height:44px}
button{font:inherit}
.btn{font-weight:700;padding:9px 14px;border:0;border-radius:8px;background:var(--blue);color:#fff;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.btn.sec{background:var(--soft);color:var(--ink)}.btn.danger{background:var(--red);color:#fff}
.btn[disabled]{opacity:.55;cursor:default}
.msg{padding:9px 11px;border-radius:8px;font-size:13px;margin-top:8px;white-space:pre-wrap}
.msg.ok{background:#E3F1EA;color:var(--ok)}.msg.err{background:#FBE7E2;color:var(--red)}.msg.info{background:#E8EEF7;color:var(--blue)}
.steps{display:flex;flex-wrap:wrap;gap:0;margin:4px 0}
.step{flex:1;min-width:96px;padding:8px 10px;border-left:3px solid var(--line);font-size:12px}
.step .nm{font-weight:700}.step .tm{color:#9aa0a8;font-size:10.5px}
.step.done{border-color:var(--ok)}.step.done .nm{color:var(--ok)}
.step.now{border-color:var(--orange)}.step.now .nm{color:#9a3412}
.step.fail{border-color:var(--red)}.step.fail .nm{color:var(--red)}
.jobhead{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px}
.jobhead b{font-size:14px}.jobhead span{color:var(--mute);font-size:11.5px}
.failreason{background:#fff;border:1px solid #f2b8ab;border-radius:8px;padding:9px 11px;font-size:13px;margin:8px 0}
.card.fail{border-color:#f2b8ab;background:#fff8f6}
.card.pick{border-color:#93c5fd;background:#f5f9ff}
.pickrow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border:1px solid #dbe3ee;border-radius:8px;margin:6px 0;background:#fff}
.pickrow b{font-size:13.5px}.pickrow .cells{color:#4b5563;font-size:12px}
.verbadge{display:inline-block;padding:1px 7px;border-radius:10px;font-size:11px;color:var(--blue);background:#E8EEF7;margin-left:4px}
.tag{display:inline-block;padding:1px 7px;border-radius:10px;font-size:11px;color:#fff;background:#6b7280}
.tag.ok{background:var(--ok)}.tag.warn{background:var(--orange)}
.warnbox{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:9px 11px;border-radius:8px;font-size:12px;margin:8px 0}
.rowbtns{display:flex;gap:6px;flex-wrap:wrap}
.claim-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--line)}
.claim-d{padding:7px 0;border-top:1px solid var(--line)}
.hx-sum{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.hx-sum>div{background:var(--soft);border-radius:8px;padding:10px}
.hx-card{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:9px}.hx-card.warn{border-color:#E8B45A}
.t-chk{border:1.5px solid #E8B45A}.t-chk-r{padding:8px 0;border-top:1px solid var(--line)}.t-chk-r b{display:block;font-size:14px}.t-chk-r b small{color:var(--mute);font-weight:500}.t-chk-r span{display:block;font-size:13px;color:#B7791F;margin-top:2px}.t-cov-chk{color:#B7791F}
#wkCards .azt-card{background:#fff;border-radius:20px;padding:16px 10px 8px;margin:0 0 12px}
#wkCards .azt-h{display:flex;align-items:center;gap:12px;padding:0 8px 10px;width:100%;border:0;background:none;font-family:inherit;text-align:left;cursor:pointer;color:inherit}
#wkCards .azt-h:disabled{cursor:default}
#wkCards .azt-h b{flex:1;font-size:18px;font-weight:800;letter-spacing:-.02em;color:#191F28}#wkCards .azt-h em{font-style:normal;font-size:22px;font-weight:900;color:#191F28}
#wkCards .azt-ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none}#wkCards .azt-ic svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#wkCards .azt-ic.b{background:#3182F6}#wkCards .azt-ic.r{background:#F04452}#wkCards .azt-ic.g{background:#00B386}#wkCards .azt-ic.k{background:#8B95A1}
#wkCards .azt-chev{width:9px;height:9px;border:solid #8B95A1;border-width:0 2px 2px 0;transform:rotate(45deg);margin:0 4px 4px 2px}
#wkCards .azu-go{display:flex;width:calc(100% - 16px);margin:0 8px 8px;flex-direction:row;justify-content:center;gap:6px;padding:13px 6px}#wkCards .azu-go b{font-size:16px}#wkCards .azu-go small{font-size:16px;color:#fff;font-weight:800}
#wkCards .aza-li{border-top:1px solid #F2F4F6;border-radius:0}
#wkCards .t-cell{border-top:1px solid #F2F4F6;padding-left:8px;padding-right:8px;width:100%}
#wkGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px}
#wkGrid .wk-tile{background:#fff;border-radius:20px;padding:18px 16px 16px;align-items:flex-start;gap:4px;min-height:132px;box-shadow:none}
#wkGrid .wk-tile:active{background:#F2F4F6}
#wkGrid .wk-tile b{color:#191F28;font-size:18px;margin-top:10px}#wkGrid .wk-tile small{color:#8B95A1;font-size:13px;font-weight:600}
.wk-ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center}.wk-ic svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.wk-ic.b{background:#3182F6}.wk-ic.r{background:#F04452}.wk-ic.g{background:#00B386}.wk-ic.p{background:#7B61FF}
#wkStat{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:20px;padding:6px;margin:0 0 12px}
#wkStat .wk-st{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 2px 12px;border:0;background:none;border-radius:14px;cursor:pointer;font-family:inherit;min-width:0}
#wkStat .wk-st:active{background:#F2F4F6}
#wkStat .wk-st b{font-size:22px;font-weight:800;color:#191F28;letter-spacing:-.02em}#wkStat .wk-st b small{font-size:13px;font-weight:700;color:#4E5968;margin-left:1px}
#wkStat .wk-st span{font-size:12px;font-weight:600;color:#8B95A1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#wkStat .wk-st.hot b{color:#F04452}
#wkK{background:#fff;border-radius:20px;padding:8px;margin:0 0 12px}
@media (min-width:900px){#wkGrid{grid-template-columns:repeat(4,1fr)}#wkGrid .wk-tile{min-height:150px}}
/* 10-23 대표 '인적사항 붙여넣기' — 붙여 넣기 → 사람마다 확인 → 시트에 넣기 */
.pf-ta{width:100%;min-height:180px;box-sizing:border-box;border:1.5px solid #E5E8EB;border-radius:14px;padding:12px;font-size:15px;line-height:1.5;font-family:inherit;resize:vertical}
.pf-ta:focus{outline:0;border-color:#3182F6}
.pf-note{margin:8px 2px 12px;font-size:12.5px;color:#8B95A1}
.pf-p{border:1.5px solid #E5E8EB;border-radius:16px;padding:12px;margin:0 0 10px}.pf-p.off{opacity:.45}
.pf-ph{display:flex;align-items:center;gap:8px;margin:0 0 6px}.pf-ph b{font-size:17px;flex:1}
.pf-tag{font-size:12px;font-weight:800;border-radius:8px;padding:3px 8px;background:#E8F3FF;color:#1B64DA}.pf-tag.old{background:#F2F4F6;color:#4E5968}.pf-tag.q{background:#FFF0E6;color:#D9480F}
.pf-r{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid #F2F4F6;font-size:14px}.pf-r>span{width:62px;flex:none;color:#8B95A1}
.pf-r input{flex:1;min-width:0;height:auto;min-height:0;margin:0;border:0;border-bottom:1px dashed #D1D6DB;border-radius:0;box-shadow:none;padding:3px 0;font-size:15px;font-family:inherit;background:none}.pf-r input:focus{outline:0;border-color:#3182F6}
.pf-r i{font-style:normal;font-size:12px;color:#00B386;white-space:nowrap}
.pf-d{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;margin:2px 0 6px 70px;font-size:12.5px;color:#D9480F}.pf-d span{display:flex;gap:4px}.pf-d button{border:1px solid #D1D6DB;background:#fff;border-radius:8px;padding:3px 8px;font-weight:700;font-size:12px;font-family:inherit;cursor:pointer}.pf-d button.on{background:#191F28;color:#fff;border-color:#191F28}
.pf-w{margin:6px 0 0;font-size:12.5px;color:#D9480F}.pf-block{background:#FFF4E6;border-radius:12px;padding:10px 12px;margin:0 0 10px;font-size:13.5px;line-height:1.45}
.pf-x{border:0;background:none;color:#8B95A1;font-size:13px;font-family:inherit;cursor:pointer;padding:2px 4px}
.pf-btns{display:flex;gap:8px;margin-top:6px}.pf-btns button{flex:1;padding:14px;border-radius:14px;border:0;font-weight:800;font-size:16px;font-family:inherit;cursor:pointer}.pf-btns .go{background:#3182F6;color:#fff}.pf-btns .go:disabled{opacity:.5}.pf-btns .sub{background:#F2F4F6;color:#4E5968}
.pf-done{text-align:center;padding:10px 0 4px}.pf-done b{display:block;font-size:20px;margin:6px 0}.pf-done p{margin:4px 0;color:#4E5968;font-size:14px}
.azu-start{padding-top:14px}.azu-gos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.azu-go{border:0;border-radius:16px;background:#3182F6;padding:18px 6px 15px;display:flex;flex-direction:column;align-items:center;gap:3px;font-family:inherit;cursor:pointer}
.azu-go:active{background:#1B64DA}.azu-go b{font-size:17px;font-weight:800;color:#fff}.azu-go small{font-size:12px;color:#D6E6FF;font-weight:600}
.azu-run{font-size:13px;color:#3182F6;font-weight:700;margin:0 4px 8px}
.hx-q-r.mini{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px}.hx-q-r.mini b{display:inline;font-size:13.5px;font-weight:700}.hx-q-r.mini span{display:inline;margin:0;font-size:12.5px;color:var(--mute);text-align:right}
.fl-h{font-size:14px;font-weight:800;margin:16px 0 6px}.fl-h small{font-weight:500;color:var(--mute)}
.fl-bar{display:grid;grid-template-columns:76px 1fr 70px;gap:8px;align-items:center;font-size:13px;margin:5px 0}.fl-bar i{height:10px;background:#F2F4F6;border-radius:9px;overflow:hidden}.fl-bar i b{display:block;height:100%;border-radius:9px}.fl-bar em{font-style:normal;color:var(--mute);text-align:right;font-size:12px}
.fl-row{display:flex;flex-wrap:wrap;gap:2px 10px;padding:7px 0;border-top:1px solid var(--line);font-size:13px}.fl-row b{flex:1 1 100%;font-size:13.5px}.fl-row small{color:var(--mute)}
.fl-hours{display:flex;gap:3px;align-items:flex-end;height:70px}.fl-hours i{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;position:relative}.fl-hours i b{display:block;background:#3182F6;border-radius:3px 3px 0 0;min-height:1px}.fl-hours i small{font-size:10px;color:var(--mute);text-align:center;height:12px}
.fl-ex{margin-top:14px;font-size:13px}.fl-ex p{margin:6px 0}
.hx-q-g{border-left:4px solid #F0605A;padding:2px 0 2px 12px;margin-top:14px}.hx-q-g.none{border-left-color:var(--line)}.hx-q-g.chk{border-left-color:#E8B45A}
.hx-q-h{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.hx-q-h b{font-size:15px}.hx-q-h span{font-size:13px;font-weight:700;color:#D6453E;flex:none}
.hx-q-g.none .hx-q-h b,.hx-q-g.none .hx-q-h span{color:var(--mute);font-weight:500}.hx-q-g.chk .hx-q-h span{color:#B7791F}
.hx-q-s{font-size:12px;color:var(--mute);margin-top:1px}
/* 11-05 알릴의무 확인하기(맨 위 접힘) — 서류에 안 나오는 것 9가지 */
#hxGuide>summary{cursor:pointer;font-size:15px}#hxGuide .hx-guide{padding:8px 0;border-top:1px solid var(--line,#e5e8eb);font-size:13px;line-height:1.5}#hxGuide .hx-guide:first-of-type{margin-top:8px}#hxGuide .hx-guide>div{margin-top:2px}
.hx-send-w{font-size:12.5px;color:#B7791F;margin:4px 0 2px}
#hx1y>summary{cursor:pointer;font-size:15px}
.hx-q-r{margin-top:8px;padding:9px 11px;background:var(--soft,#F6F6F4);border-radius:9px}.hx-q-r b{display:block;font-size:14px}.hx-q-r span{display:block;font-size:13px;color:var(--ink2,#444);margin-top:2px}
.hx-more>summary{cursor:pointer;font-weight:700;font-size:14px;list-style-position:inside}
.hx-kv{display:grid;grid-template-columns:72px minmax(0,1fr);gap:3px 8px;font-size:12.5px;margin-top:7px}.hx-kv>span:nth-child(odd){color:var(--mute)}
.pill.bad{background:#FCE9E5;color:var(--red)}
.claim-d .pill{display:inline-block;font-size:11.5px;padding:1px 7px;border-radius:9px;background:#E6F2EC;color:var(--ok)}
.claim-d .pill.warn{background:#FCEEE2;color:var(--orange)}
.rowbtns button{font-size:11.5px;padding:0 11px;min-height:44px;border-radius:6px;border:1px solid var(--line);background:#fff;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center}
.rowbtns button[disabled]{opacity:.4;cursor:default}
.rowbtns a{font-size:11.5px;padding:0 11px;min-height:44px;border-radius:6px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);white-space:nowrap;display:inline-flex;align-items:center}
.cust-link{font:inherit;font-size:13px;font-weight:600;color:var(--blue);background:none;border:none;cursor:pointer;padding:6px 4px;min-height:44px;display:inline-flex;align-items:center;text-align:left}
.cust-link:hover{text-decoration:underline}
@media(max-width:480px){table{font-size:12px}th,td{padding:5px 4px}}

/* 연결(지식그래프) 탭 — 큐 09-19(dashboard). 큐39(09-20) LOD·모바일 하단시트.
   큐43(09-21): 색·간격·패널 배치·타이포를 비서실/지식그래프_v1.html 기준으로 재대조해 복원
   (--kg-tension·--kg-gap 은 v1 전용 색, 대시보드 공용 --red/--orange 재사용을 그만둠) */
:root{--kg-tension:#C93A3A;--kg-gap:#D48B1C}
#connections{padding:0;margin:-14px}
.kg-wrap{display:flex;height:calc(100vh - 190px);min-height:360px}
.kg-main{flex:1;min-width:0;position:relative;background:var(--soft)}
.kg-main svg{width:100%;height:100%;display:block;cursor:grab}
.kg-main svg:active{cursor:grabbing}
.kg-legend{position:absolute;left:12px;bottom:12px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px 11px;font-size:11.5px;color:var(--mute);display:flex;gap:12px;align-items:center;pointer-events:none}
.kg-legend b{display:inline-block;width:22px;border-top:2px solid #B9BFC9;vertical-align:middle;margin-right:4px}
.kg-legend .t b{border-top:2px dashed var(--kg-tension)}
.kg-legend .g b{border-top:2px dashed var(--kg-gap)}
.kg-side{width:340px;border-left:1px solid var(--line);background:#fff;overflow-y:auto;padding:18px 20px;flex-shrink:0}
.kg-side h2{font-size:15px;font-weight:600;margin-bottom:4px}
.kg-side .kind{font-size:12px;color:var(--mute);margin-bottom:10px}
.kg-side ul{padding-left:16px;margin:6px 0 12px;font-size:12.5px}
.kg-side ul.kg-conn{list-style:none;padding:0}
.kg-side ul.kg-conn li{display:flex;gap:8px;align-items:baseline;padding:7px 0;border-top:1px solid var(--line);cursor:pointer;font-size:12.5px;min-height:44px}
.kg-side ul.kg-conn li:hover{background:var(--soft)}
.kg-side .rel{color:var(--mute);font-size:12px;min-width:86px;display:inline-block}
.kg-mark{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}
.kg-insight{border-left:3px solid var(--line);padding:8px 12px;margin:10px 0;cursor:pointer;border-radius:0 6px 6px 0;background:var(--soft)}
.kg-insight:hover{background:#EFEFEC}
.kg-insight b{display:block;font-weight:600;font-size:13.5px}
.kg-insight span{color:var(--mute);font-size:12.5px}
.kg-insight .kg-meta{display:block;color:#999;font-size:11px;margin-top:4px}
.kg-tag{font-size:11px;padding:1px 7px;border-radius:4px;color:#fff;margin-right:6px;vertical-align:middle}
.kg-back{font:inherit;background:none;border:none;color:var(--blue);cursor:pointer;padding:0;margin-bottom:10px;font-size:13px;min-height:44px}
.kg-chips{display:flex;gap:6px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);background:#fff;align-items:center}
.kg-chip{border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:12.5px;padding:3px 12px;min-height:40px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.kg-chip i{width:9px;height:9px;border-radius:50%;display:inline-block;flex-shrink:0}
.kg-chip[data-off="1"]{opacity:.38}
.kg-node{cursor:pointer}
.kg-node .kg-hit{fill:transparent}
.kg-node circle.kg-dot{stroke:#fff;stroke-width:2px}
.kg-node text{font-size:11.5px;fill:var(--ink);pointer-events:none;paint-order:stroke;stroke:var(--soft);stroke-width:3px;stroke-linejoin:round}
.kg-node.dim{opacity:.15}
.kg-link{stroke:#B9BFC9;stroke-width:1.3px}
.kg-link.tension{stroke:var(--kg-tension);stroke-width:2px;stroke-dasharray:5 4}
.kg-link.gap{stroke:var(--kg-gap);stroke-width:2px;stroke-dasharray:3 5}
.kg-link.dim{stroke:#E3E6EB;opacity:.4}
.kg-link.on{stroke-width:2.6px}
.kg-empty{padding:40px 20px;text-align:center;color:var(--mute);font-size:13px}
.kg-sheet-open{display:none}
.kg-sheet-fab{display:none}
@media(max-width:640px){.kg-legend{display:none}}
@media(max-width:640px){
  .kg-wrap{flex-direction:column;height:calc(100vh - 190px)}
  .kg-main{flex:1}
  .kg-side{position:fixed;left:0;right:0;bottom:56px;width:auto;max-height:62vh;border-left:none;border-top:1px solid var(--line);
    border-radius:14px 14px 0 0;box-shadow:0 -6px 18px rgba(0,0,0,.16);transform:translateY(105%);
    transition:transform .22s ease;z-index:55}
  .kg-side.kg-sheet-open{transform:translateY(0)}
  .kg-sheet-fab{display:block;position:fixed;left:50%;bottom:68px;transform:translateX(-50%);z-index:54;
    background:var(--ink);color:#fff;border:none;border-radius:999px;padding:0 18px;min-height:44px;font-size:12.5px;font-weight:700;cursor:pointer;
    box-shadow:0 3px 10px rgba(0,0,0,.25)}
  .kg-sheet-close{display:block!important;position:sticky;top:0;background:#fff;text-align:right;margin:-18px -20px 8px;padding:6px 12px;border-bottom:1px solid var(--line)}
}
.kg-sheet-close{display:none;border:none;background:none;cursor:pointer;font:inherit;font-size:12.5px;color:var(--mute);min-height:44px;padding:0 6px}

/* 09-26 개편 — 오늘 화면 */
.today-head{padding:4px 2px 10px}
.sysline{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--mute);margin-top:4px}
.sysline .sdot{width:9px;height:9px;border-radius:50%;background:var(--ok);flex:none}
.sysline.bad{color:var(--red);background:#FCE9E5;border-radius:8px;padding:8px 10px;align-items:flex-start}
.sysline.bad .sdot{background:var(--red);margin-top:4px}
.tsec{margin-bottom:6px}.tsec .th2{display:flex;justify-content:space-between;font-size:12.5px;color:var(--mute);margin:8px 2px 6px}
.titem{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;background:#fff}
.titem .tb{width:4px;align-self:stretch;border-radius:2px;flex:none}
.tb.r{background:var(--red)}.tb.o{background:var(--orange)}.tb.b{background:var(--blue)}
.titem .tt{font-size:14.5px;font-weight:600}.titem .ts2{font-size:12.5px;color:var(--mute);margin-top:2px;line-height:1.5}
.titem .ta{margin-left:auto;align-self:center;white-space:nowrap;font-size:13px;padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;min-height:36px}
.tprog{height:5px;background:var(--soft);border-radius:3px;margin-top:7px;overflow:hidden}.tprog i{display:block;height:100%;background:var(--blue)}
.nbadge{position:absolute;top:4px;left:55%;background:var(--red);color:#fff;font-size:10.5px;border-radius:9px;padding:1px 6px;display:none}
.bottomnav button{position:relative}
.toolgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.toolbtn{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit;font-size:20px;cursor:pointer}
.toolbtn b{font-size:14px}.toolbtn span{font-size:12px;color:var(--mute)}

/* ── 09-26 개편 2차: CRM형 현황 · 반응형 ───────────────────────────── */
:root{--ink:#15233B;--red:#D8452F;--orange:#E39B22;--ok:#1F8A8A;--blue:#1F8A8A;--line:#E2E7EE;--mute:#66728A;--soft:#EEF1F5;--paper:#F3F5F8}
body{font-family:"Pretendard Variable",Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}
main{max-width:1180px;padding:0 14px 90px}
.card{border:none;border-radius:12px}
input,select,textarea{min-width:0;max-width:100%}
.row>input,.row>select{flex:1 1 180px}
table{min-width:0}.tablewrap table{min-width:560px}
td,th{word-break:keep-all;overflow-wrap:anywhere}
.band{background:var(--ink);color:#fff;margin:0 -14px 14px;padding:18px 18px 20px;border-radius:0 0 18px 18px}
.band-date{font-size:12.5px;opacity:.7}
.band-h{font-size:26px;font-weight:800;letter-spacing:-0.03em;margin:2px 0 0}
.band-say{font-size:14px;margin:10px 0 0;line-height:1.5;opacity:.95}
.band-say .sdot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3FC1B0;margin-right:7px;vertical-align:1px}
.band.bad{background:#7A1F12}.band.bad .sdot{background:#FF8A73}
.band-sys{font-size:12px;opacity:.65;margin:4px 0 0}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.kpi{background:#fff;border-radius:12px;padding:13px 14px;display:flex;flex-direction:column;gap:2px}
.kpi span{font-size:12.5px;color:var(--mute)}
.kpi b{font-size:28px;font-weight:800;letter-spacing:-0.03em;font-variant-numeric:tabular-nums;line-height:1.15}
.kpi small{font-size:12px;color:var(--mute)}
.kpi.hot b{color:var(--red)}
.panel{background:#fff;border-radius:12px;padding:14px;margin-bottom:12px;min-width:0}
.ph{font-size:14px;font-weight:700;margin-bottom:10px;display:flex;justify-content:space-between;gap:8px}
.ph span{font-weight:500;color:var(--mute);font-size:12.5px}
.flow{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(110px,1fr);gap:8px;overflow-x:auto;padding-bottom:2px}
.stg{background:var(--soft);border-radius:10px;padding:11px 12px;cursor:pointer}
.stg b{display:block;font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}
.stg span{font-size:12px;color:var(--mute)}
.stg.dark{background:var(--ink);color:#fff}.stg.dark span{color:#C9D1DD}
.stg.off{opacity:.55;cursor:default}
.act{display:flex;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--soft)}
.act:first-child{border-top:none}
.act .dot{width:9px;height:9px;border-radius:50%;flex:none}
.dot.r{background:var(--red)}.dot.a{background:var(--orange)}.dot.i{background:#9AA4B5}.dot.t{background:var(--ok)}
.act .tx{flex:1;min-width:0}.act .tx b{font-size:14px;font-weight:650;display:block}
.act .tx small{display:block;font-size:12.5px;color:var(--mute);line-height:1.45;margin-top:1px}
.act .go{font:inherit;font-size:12.5px;font-weight:650;color:var(--ink);background:var(--soft);border:none;border-radius:8px;padding:8px 12px;white-space:nowrap;cursor:pointer;min-height:36px}
.bars{display:flex;align-items:flex-end;gap:10px;height:140px}
.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;font-size:12px;color:var(--mute);height:100%}
.bar i{display:block;width:100%;max-width:46px;border-radius:5px 5px 0 0;background:#C9D3E0;min-height:3px}
.bar.cur i{background:var(--ink)}.bar em{font-style:normal;font-weight:700;color:var(--ink);font-size:12.5px}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ctable{width:100%;border-collapse:collapse;font-size:13px;min-width:620px}
.ctable th{text-align:left;font-weight:600;color:var(--mute);font-size:12px;padding:7px 8px;border-bottom:1px solid var(--line)}
.ctable td{padding:10px 8px;border-bottom:1px solid var(--soft);vertical-align:top}
.ctable td.num{text-align:right;font-variant-numeric:tabular-nums}
.ctable .pill{display:inline-block;font-size:11.5px;font-weight:600;border-radius:6px;padding:2px 7px;margin:0 3px 3px 0}
.pill.r{background:#FBE3DE;color:#B23A26}.pill.a{background:#FBEFD8;color:#8A5A0E}.pill.i{background:var(--soft);color:var(--mute)}
.duo{display:grid;grid-template-columns:1fr;gap:12px}.duo .panel{margin-bottom:0}.duo{margin-bottom:12px}
.bottomnav{background:#fff;border-top:1px solid var(--line)}
.bottomnav button .ic{font-size:17px}
@media(min-width:1024px){
  body{padding-left:208px}
  main{padding:0 28px 40px}
  .band{margin:0 -28px 18px;padding:26px 28px 26px;border-radius:0 0 22px 22px}
  .kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
  .duo{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
  .bottomnav{top:0;bottom:0;left:0;right:auto;width:208px;flex-direction:column;justify-content:flex-start;gap:2px;padding:22px 12px;background:var(--ink);border:none}
  .bottomnav:before{content:"AZ";color:#fff;font-weight:800;font-size:18px;padding:0 12px 18px;letter-spacing:-0.02em}
  .bottomnav button{flex:none;flex-direction:row;justify-content:flex-start;gap:10px;color:#AEB9CA;padding:11px 12px;border-radius:9px;font-size:14px;text-align:left}
  .bottomnav button.on{background:rgba(255,255,255,.12);color:#fff;font-weight:700}
  .bottomnav .nbadge{position:static;display:none;margin-left:auto}
}
.marks{display:flex;gap:6px;margin-top:7px;flex-wrap:wrap}
.mk{font:inherit;font-size:11.5px;color:var(--mute);background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 10px;cursor:pointer;min-height:28px}
.mk:hover{border-color:var(--ink);color:var(--ink)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.t-run-btn{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}
.t-mini-btn{font-size:12px;padding:6px 10px;border-radius:8px;border:1px solid var(--line,#e5e7eb);background:#fff;margin-left:6px;cursor:pointer}
.t-mini-btn.t-danger{color:#d4380d;border-color:#f3c3b4}
.bd-days{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}.bd-day{font:inherit;font-size:13px;color:var(--ink-2,#6b7684);background:var(--wash,#f3f5f8);border:0;border-radius:10px;padding:7px 10px;cursor:pointer}.bd-day.on{color:#3182F6;background:#E8F3FF}
.t-cb-hint{display:block;margin:2px 0 0 52px;font-size:12px;color:#3182F6}
.t-pl-slim{display:flex;align-items:center;gap:6px}.t-pl-slim .t-pl-main{flex:1;min-width:0}.t-pl-slim .t-pl-nm{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.t-pl-slim .t-pl-say1{display:block;margin-top:4px;font-size:14px;color:var(--ink-2,#4e5968);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-pl-slim .t-chev{color:#B0B8C1;font-size:20px;padding-right:4px}
.t-hm-weekbtn{display:block;width:100%;border:0;background:var(--wash,#f3f5f8);color:#3182F6;font:inherit;font-size:14px;font-weight:600;padding:12px;border-radius:14px;margin:8px 0 0}
.t-res-api{margin:10px 0 12px;padding:16px 16px;border-radius:14px;background:#FFF6E5;color:#6B4500;font-size:15px;line-height:1.5}.t-res-api>b{font-size:18px;display:block;margin-bottom:4px}.t-res-l .t-mute{color:#8B95A1;font-weight:600}
.t-pl-sec{margin:0 0 14px}.t-pl-sec .t-sh{padding:6px 2px 8px}
.t-hm-slim .t-tx b{font-size:15px}.t-hm-slim .t-chev{color:#B0B8C1;font-size:20px;padding:0 4px}
.bottomnav button[hidden]{display:none!important}
.t-res-api ul{margin:6px 0 0 18px;padding:0}.t-res-api li{margin:2px 0}
.t-res-api li i{font-style:normal;font-size:12px;color:#8A5A00;background:#FFE8BF;border-radius:6px;padding:1px 6px;margin-left:6px}
.t-res-api p{margin:6px 0 8px;line-height:1.55;font-size:15px}.t-res-api-ask{font-weight:700;color:#3182F6;align-self:center;font-size:13px}.t-res-api .t-acts{display:flex;gap:10px;align-items:center;margin-top:8px}
.t-paid-sample .t-res-l{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line,#eef0f3)}.t-paid-sample .t-res-l small{display:block;color:var(--ink-2,#6b7684);font-size:12px}.t-paid-sample .t-res-s{font-size:13px;color:var(--ink-2,#6b7684);margin-top:6px}
.t-cv-acts{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px}.t-cv-acts .t-go{flex:1 1 calc(50% - 4px);min-width:0;justify-content:center;text-align:center}.t-cv-acts .t-go-del{flex:0 0 auto;color:#d4380d;border-color:#f3c3b4}
/* ── 10-24 기획 탭(gh-) — 시안 2026-10-24_기획탭 · 토스식 · 상세는 시트 ── */
#gh{background:#fff}
.gh-top{padding:22px 20px 16px}.gh-top small{color:#8B95A1;font-size:13px;font-weight:500}.gh-top h1{margin:6px 0 0;font-size:23px;line-height:1.3;font-weight:800;letter-spacing:-.3px;color:#191F28}.gh-top h1 b,.gh-top p b{color:#3182F6}.gh-top p{margin:8px 0 0;color:#4E5968;font-size:13.5px;font-weight:500;line-height:1.5}
.gh-band{height:12px;background:#F2F4F6;margin:0 -14px}
.gh-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-top:6px}.gh-card{min-width:0;background:#fff;border:1px solid #E5E8EB;border-radius:16px;padding:14px 16px 12px;overflow:hidden}.gh-card:active{background:#F2F4F6}.gh-ch{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.gh-ch b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gh-ch .gh-n{flex:none}.gh-ch b{font-size:17px;font-weight:800;color:#191F28;letter-spacing:-.2px}.gh-card p{margin:5px 0 10px;font-size:13.5px;color:#4E5968;line-height:1.45}.gh-card .gh-bar{margin:0}
.gh-stuck{display:block;font-size:12px;font-weight:600;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gh-stuck.bad{color:#F04452}.gh-stuck.hand{color:#E08A00}.gh-stuck.now{color:#3182F6}.gh-stuck.plan{color:#8B95A1}
.gh-sec{padding:18px 20px 16px}.gh-sec h2{margin:0 0 12px;font-size:13px;font-weight:700;color:#8B95A1}.gh-sec h2 b{color:#191F28;font-size:15px;margin-right:6px}
.gh-who{display:flex;align-items:center}.gh-who .n{flex:1;text-align:center;padding:12px 4px;border-radius:14px;background:#F2F4F6;font-size:13px;font-weight:700;color:#8B95A1}.gh-who .n.on{background:#3182F6;color:#fff}.gh-who .a{width:22px;text-align:center;color:#B0B8C1;font-size:16px;flex:none}
.gh-layers{position:relative;padding-left:30px}.gh-layers::before{content:'';position:absolute;left:11px;top:14px;bottom:14px;width:3px;background:#E5E8EB;border-radius:3px}
.gh-ly{position:relative;background:#fff;border:1px solid #E5E8EB;border-radius:16px;padding:12px 14px;margin-bottom:10px;cursor:pointer}.gh-ly::before{content:'';position:absolute;left:-25px;top:16px;width:12px;height:12px;border-radius:50%;background:#3182F6;border:3px solid #fff;box-shadow:0 0 0 2px #E5E8EB}
.gh-ly .t{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.gh-ly .t b{font-size:14px;color:#191F28}.gh-ly .t small{color:#8B95A1;font-size:12px;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gh-ly .t .go{color:#B0B8C1;font-size:16px}
.gh-chips{display:flex;flex-wrap:wrap;gap:6px}.gh-chip{font-size:11.5px;font-weight:600;padding:5px 9px;border-radius:999px;background:#F2F4F6;color:#8B95A1}
.gh-chip.ok{background:#E8F3FF;color:#3182F6}.gh-chip.now{background:#fff;color:#3182F6;border:1.5px solid #3182F6}.gh-chip.bad{background:#FFEBEE;color:#F04452}.gh-chip.hand{background:#FFF4E0;color:#E08A00}.gh-chip.plan{background:#fff;border:1px dashed #B0B8C1;color:#8B95A1}.gh-chip.none{background:#F2F4F6;color:#B0B8C1}
.gh-legend{display:flex;gap:11px;color:#8B95A1;font-size:11px;font-weight:600;flex-wrap:wrap;margin-top:10px}.gh-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px;vertical-align:-1px;background:#F2F4F6}.gh-legend i.ok{background:#3182F6}.gh-legend i.now{background:#fff;border:2px solid #3182F6;width:7px;height:7px}.gh-legend i.hand{background:#E08A00}.gh-legend i.bad{background:#F04452}.gh-legend i.plan{background:#fff;border:1px dashed #B0B8C1;width:8px;height:8px}.gh-legend i.none{background:#E5E8EB}
.gh-lane{display:grid;grid-template-columns:1fr 84px 40px;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #F2F4F6;cursor:pointer}.gh-lane:last-child{border-bottom:0}.gh-nm{font-size:13.5px;font-weight:700;color:#191F28;min-width:0}.gh-nm small{display:block;color:#8B95A1;font-weight:500;font-size:11px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gh-bar{height:8px;border-radius:8px;background:#F2F4F6;position:relative;overflow:hidden}.gh-bar i{position:absolute;left:0;top:0;bottom:0;background:#3182F6;border-radius:8px}.gh-bar.bad i{background:#F04452}.gh-bar.hand i{background:#E08A00}.gh-bar.plan i{background:#B0B8C1}
.gh-n{text-align:right;font-size:12.5px;font-weight:800;color:#4E5968;font-variant-numeric:tabular-nums}.gh-n.bad{color:#F04452}.gh-n.hand{color:#E08A00}
.gh-row{display:flex;align-items:center;gap:12px;padding:10px 0;cursor:pointer}.gh-row .ic{width:40px;height:40px;border-radius:50%;background:#FFF4E0;color:#E08A00;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}.gh-row .ic.ok{background:#E8F3FF;color:#3182F6}.gh-row .ic.now{background:#E8F3FF;color:#3182F6}.gh-row .ic.bad{background:#FFEBEE;color:#F04452}.gh-row .ic.plan,.gh-row .ic.none{background:#F2F4F6;color:#8B95A1}.gh-row .tx{flex:1;min-width:0}.gh-row .tx b{display:block;font-size:14px;font-weight:700;color:#191F28}.gh-row .tx small{display:block;color:#8B95A1;font-size:12px;margin-top:2px}.gh-row .go{color:#B0B8C1;font-size:18px}
.gh-q{display:flex;flex-wrap:wrap;gap:6px}.gh-q span{font-size:12px;font-weight:600;padding:7px 11px;border-radius:12px;background:#FFF4E0;color:#E08A00}
.gh-rule{color:#8B95A1;font-size:11.5px;line-height:1.6;font-weight:500}
/* 시트 안 */
.gh-who2{color:#8B95A1;font-size:12px;font-weight:600;margin-bottom:4px}.gh-who2 b{color:#3182F6}.gh-p{color:#4E5968;font-size:13.5px;line-height:1.55;margin:0 0 8px}.gh-p b{color:#191F28;margin-right:6px}
.gh-stat{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}.gh-stat span{font-size:12px;font-weight:700;padding:6px 10px;border-radius:999px;background:#F2F4F6;color:#4E5968}.gh-stat span.ok{background:#E8F3FF;color:#3182F6}.gh-stat span.bad{background:#FFEBEE;color:#F04452}.gh-stat span.hand{background:#FFF4E0;color:#E08A00}
.gh-h4{margin:16px 0 8px;font-size:14px;font-weight:800;color:#191F28}.gh-h4 small{color:#8B95A1;font-weight:500;font-size:12px;margin-left:6px}
.gh-step{display:flex;gap:12px;padding:8px 0;align-items:flex-start}.gh-step .d{width:22px;height:22px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;margin-top:1px;background:#F2F4F6;color:#B0B8C1}.gh-step .d.ok{background:#3182F6;color:#fff}.gh-step .d.now{background:#E8F3FF;color:#3182F6}.gh-step .d.hand{background:#FFF4E0;color:#E08A00}.gh-step .d.bad{background:#FFEBEE;color:#F04452}.gh-step b{display:block;font-size:14px;font-weight:700;color:#191F28}.gh-step small{display:block;color:#8B95A1;font-size:12px;margin-top:2px}
.issue{display:block;margin-top:5px;font-size:12px;color:#F04452;background:#FFEBEE;border-radius:8px;padding:5px 8px;font-weight:600;line-height:1.4}
.gh-flow{position:relative;padding-left:34px}.gh-flow::before{content:'';position:absolute;left:13px;top:16px;bottom:16px;width:3px;background:#E5E8EB;border-radius:3px}
.gh-flow .fs{position:relative;padding:8px 0 12px}.gh-flow .fs .d{position:absolute;left:-34px;top:9px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;border:3px solid #fff;box-shadow:0 0 0 2px #E5E8EB;background:#fff;color:#8B95A1}
.gh-flow .fs .d.ok{background:#3182F6;color:#fff;box-shadow:0 0 0 2px #3182F6}.gh-flow .fs .d.hand{background:#E08A00;color:#fff;box-shadow:0 0 0 2px #E08A00}.gh-flow .fs .d.bad{background:#F04452;color:#fff;box-shadow:0 0 0 2px #F04452}.gh-flow .fs .d.now{background:#fff;color:#3182F6;box-shadow:0 0 0 2px #3182F6}
.gh-flow .where{font-size:10.5px;font-weight:700;color:#8B95A1;letter-spacing:.3px;margin-bottom:2px}.gh-flow .fs b{display:block;font-size:14.5px;font-weight:700;color:#191F28}.gh-flow .fs small{display:block;color:#8B95A1;font-size:12px;margin-top:2px;line-height:1.45}
.gh-why{color:#4E5968;font-size:13px;line-height:1.6;font-weight:500}.gh-why p{margin:0 0 6px}
.gh-links{display:flex;flex-wrap:wrap;gap:6px}.gh-links .lk{font-size:12px;font-weight:600;padding:7px 11px;border-radius:12px;background:#EFEBFF;color:#7C5CFF;cursor:pointer}.gh-links .lk.g{background:#F2F4F6;color:#4E5968;cursor:default}
.gh-idea{margin-top:18px;border-radius:18px;background:#F2F4F6;padding:14px 16px}.gh-idea b{display:block;font-size:14px;font-weight:700;color:#191F28}.gh-idea small{display:block;color:#8B95A1;font-size:12px;margin-top:2px}.gh-idea textarea{display:block;width:100%;margin-top:10px;background:#fff;border:0;border-radius:12px;padding:12px;font:inherit;font-size:13.5px;color:#191F28;resize:vertical}.gh-idea .t-cta{margin-top:10px}.gh-msg{margin:8px 0 0;font-size:12px;color:#8B95A1}.gh-msg.ok{color:#00B386}
/* 10-29 대표 "은행 입력 말고 한눈에 보고 선택" — 금융기관 격자(토스 간편송금 꼴) */
.t-bank-bg{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:300}
.t-bank-sheet{position:fixed;left:0;right:0;bottom:0;background:#fff;color:#191f28;border-radius:20px 20px 0 0;max-height:82vh;overflow:auto;padding:18px 16px 28px;z-index:301;box-sizing:border-box}
.t-bank-h{display:flex;justify-content:space-between;align-items:center;font-size:20px;margin-bottom:14px}
.t-bank-x{border:0;background:none;font-size:26px;line-height:1;color:#333;padding:0 4px}
.t-bank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.t-bank{border:0;background:#f7f8fa;border-radius:14px;padding:16px 4px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:15px;color:#191f28;min-width:0;cursor:pointer}
.t-bank:active{background:#e9ecef}
.t-bank i{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;font-size:13px}
.t-bank span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.t-bank-btn{text-align:left;color:#8b95a1}.t-bank-btn.on{color:inherit}
/* 10-29 대표 "금융기관 선택하기 PC 에서 너무 크게 나온다" — 넓은 화면에선 폰 폭(최대 480px)으로 가운데 띄우기 · 칸·글자도 폰 크기 그대로 */
@media (min-width:700px){
  .t-bank-sheet{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);width:480px;max-width:calc(100vw - 48px);max-height:80vh;border-radius:20px;padding:18px 18px 22px;box-shadow:0 12px 40px rgba(0,0,0,.25)}
  .t-bank-h{font-size:18px}
  .t-bank{padding:12px 4px 10px;font-size:14px}
  .t-bank i{width:36px;height:36px;font-size:12px}
}
/* 10-30 대표 계약 묻기 — 타일 → 전면 채팅방 · 말풍선 + 사람 5명 · 목록 시트 · CSV (10-30 디자인 다시 봄: 방 높이 고정 · 마지막 질문 맨 위 · 한 줄 사람) */
.ask-sheet{display:flex;flex-direction:column;height:min(84vh,760px);height:min(84dvh,760px,calc(var(--vvh,100vh) - 24px));box-sizing:border-box}   /* 10-30 자판이 뜨면 줄어드는 높이(dvh) — 머리·첫 말풍선이 안 밀려 나감 */
.ask-room{display:flex;flex-direction:column;flex:1;min-height:0}
.ask-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:4px 0 10px;scroll-behavior:smooth}
.ask-q{align-self:flex-end;background:#3182F6;color:#fff;padding:9px 13px;border-radius:16px 16px 4px 16px;max-width:86%;font-size:15px;white-space:pre-wrap}
.ask-a{align-self:flex-start;background:#F2F4F6;color:#191F28;padding:10px 12px;border-radius:16px 16px 16px 4px;max-width:94%;font-size:15px;box-sizing:border-box}
.ask-a p{margin:0 0 4px;line-height:1.45}.ask-hello p{font-weight:700}
.ask-src{display:block;margin-top:6px;color:#8b95a1;font-size:11px;line-height:1.4}
.ask-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ask-chip{border:1px solid var(--t-line,#E5E8EB);background:#fff;border-radius:999px;padding:8px 13px;font:600 14px var(--t-font,inherit);color:#333D4B;cursor:pointer}   /* 10-30 대표 '디자인·css 통일' — 앱 공통 칩(.az9-chip)과 같은 값 */
.ask-people{margin-top:8px;border-top:1px solid var(--t-line,#E5E8EB)}
.ask-p{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:8px 0;border-bottom:1px solid var(--t-line,#E5E8EB);font-size:14px;color:#191F28;cursor:pointer}
.ask-pt{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ask-p i{color:#b0b8c1;font-style:normal;flex:0 0 auto}
.ask-more{margin-top:8px;width:100%}
.ask-num{display:block;font-size:26px;font-weight:800;letter-spacing:-.5px;line-height:1.15;margin-bottom:2px;color:#191F28}   /* 10-31 ① 숫자 크게 한 줄 */
.ask-more-t{margin-top:4px;font-size:13.5px;color:#4E5968}.ask-more-t summary{cursor:pointer;color:#3182F6;font-weight:600;font-size:13px;list-style:none}.ask-more-t p{margin:4px 0 0}
.ask-old{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;box-sizing:border-box;border:1px solid var(--t-line,#E5E8EB);background:#fff;border-radius:12px;padding:9px 12px;font:500 14px var(--t-font,inherit);color:#4E5968;text-align:left;cursor:pointer}
.ask-old span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ask-old b{flex:0 0 auto;color:#191F28}.ask-xlsx{width:100%;margin:6px 0 10px}
.ask-in{display:flex;gap:8px;margin-top:8px;flex:0 0 auto}
.ask-in input{flex:1;min-width:0;border:1px solid var(--t-line,#E5E8EB);border-radius:12px;padding:11px 12px;font:400 16px var(--t-font,inherit);color:#191F28;background:#fff;outline:none;box-shadow:none}
.ask-in input:focus{border-color:#3182f6;box-shadow:0 0 0 2px rgba(49,130,246,.15)}
.ask-in .t-go{flex:0 0 auto;padding:0 16px}
.ask-new{border:0;background:none;color:#8b95a1;font-size:12px;margin-top:6px;padding:0;cursor:pointer;align-self:flex-start}
@media (min-width:700px){.ask-sheet{height:min(80vh,720px);height:min(80dvh,720px,calc(var(--vvh,100vh) - 24px))}.ask-a{max-width:88%}}   /* PC: 2열은 말풍선 밖으로 잘려 한 줄 목록으로 통일 */
/* 10-30 자판이 뜨면 모든 시트가 보이는 영역 안에(머리가 위로 밀려 나가지 않게) */
.t-sheet{max-height:min(86vh,calc(var(--vvh,100vh) - 8px))}
@media (min-width:1024px){.t-sheet{max-height:min(80vh,calc(var(--vvh,100vh) - 8px))}}
/* 10-31 대표 "에즈전산은 키보드 바로 · 모바일에서 위 내용 안 잘리게(아니면 위 내용을 줄이던)" — 시트는 자판 위(--kb · 화면을 안 줄이는 브라우저) · 자판 떠 있으면 머리를 줄임 */
@media (max-width:1023px){.t-sheet{bottom:var(--kb,0px)}}
html.kb-on .t-sheet{padding-bottom:10px;max-height:calc(var(--vvh,100vh) - 8px)}
html.kb-on .ask-sheet{height:calc(var(--vvh,100vh) - 60px)}
html.kb-on .ask-sheet .aza-who,html.kb-on .ask-hello .ask-src{display:none}
html.kb-on .ask-sheet .t-q-h{margin:0 0 4px;font-size:17px}
html.kb-on .ask-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.ask-chip{flex:0 0 auto}
/* 10-31 대표 "PC 에서 css 통일성 — 클릭해서 전부 보고 어색한 것" — ① PC(1024↑)에선 큰 파란 단추(.t-cta)가 '머리 단추'용 width:auto 를 받아 시트 안에서만 좁고 왼쪽에 붙었음(폰은 가득) → 시트·진행 창 안에선 폰과 같이 가득
   ② 입력칸 초점이 브라우저 기본 검은 테두리 → 앱 파란 테두리 */
#qSheet .t-cta,.t-pm .t-cta{width:100%;white-space:normal}
@media (min-width:1024px){#qSheet .t-cta:not([style*="margin"]){margin-top:14px}}
.t-input:focus,.t-input:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(49,130,246,.35)}
/* 10-31 대표 '보험사 위에 칸 만들어 바로 청구' — 카드 머리 밑 [청구하기 — 팩스 앱으로] + 팩스 번호 한 줄 */
.t-co-go{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 10px}.t-co-go .t-go{flex:1 1 auto;min-height:44px;font-size:15px}.t-co-go span{font-size:13px;color:var(--t-sub,#8B95A1)}.t-co-go span b{color:var(--t-ink,#191F28)}
/* 10-31 대표 '다시 판정 중이라고 위에' — 화면 맨 위 띠 하나(돌아가는 중 · 끝 [보기] · 못 함) */
.t-bgjob{position:fixed;left:50%;transform:translateX(-50%);top:calc(64px + env(safe-area-inset-top,0px));z-index:130;display:flex;align-items:center;gap:10px;max-width:min(92vw,460px);box-sizing:border-box;padding:10px 12px 10px 14px;border-radius:14px;background:#191F28;color:#fff;font:600 14px var(--t-font,inherit);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.t-bgjob>span:not(.t-pm-spin){flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t-bgjob .t-pm-spin{width:14px;height:14px;border-width:2px;flex:0 0 auto}
.t-bgjob.ok{background:#0B6E4F}.t-bgjob.err{background:#C62828}
.t-bgjob .t-go{flex:0 0 auto;background:#fff;color:#191F28;border:0;padding:6px 12px;border-radius:10px;font-weight:700}
.t-bgjob .t-bgx{flex:0 0 auto;background:none;border:0;color:#fff;font-size:18px;line-height:1;padding:2px 4px;cursor:pointer}
@media (min-width:1024px){.t-bgjob{top:24px;left:calc(50% + 110px)}}


/* 10-31 지급 문자 대조 — 보험사 카드 머리 밑 한 줄(같으면 초록 · 다르면 주황) */
.t-paid{margin:6px 0 2px;padding:7px 10px;border-radius:10px;background:#E8F7EF;color:#0A7A3F;font-size:13.5px;font-weight:600}.t-paid-diff{background:#FFF4E5;color:#B35C00}.t-paid small{margin-left:6px;font-weight:400;color:#8B95A1;white-space:nowrap}
/* 11-01 병력 정리 한 목록 — 날짜 기다리는 분은 회색(시안 2판) */
#hxlist .hl-one .hl-wait .aza-li{opacity:.62}
#hxlist .hl-one .hl-wait{border-top:1px dashed #E5E8EB;margin-top:2px}
#hxlist .hl-one .hl-wait:first-child{border-top:0;margin-top:0}
/* 11-01 대표 "에즈전산에 물어보기 누르면 css 깨짐" — 닫기 단추(float:right)가 옆 자리를 먹어 flex 시트(.ask-sheet)가 오른쪽 36px 비고 말풍선·입력칸이 좁았음 → 이 시트에선 닫기를 위에 띄움 */
/* 11-01 창 × 단추 없앰(대표) — 닫기 자리 비울 것 없음 */
/* 11-01 대표 "에즈전산 누르면 스크롤은 안쪽에 위치해야 덜 어색" — 시트(86vh)보다 대화창(84dvh + 시트 위아래 여백)이 커서 바깥 시트가 같이 스크롤(화면 끝 막대) → 바깥은 안 굴리고 대화 목록만 안쪽에서 */
#qSheet:has(> #qBody > .ask-sheet){overflow:hidden}
.ask-sheet{height:min(calc(86vh - 60px),720px);height:min(calc(86dvh - 60px),720px,calc(var(--vvh,100vh) - 84px))}
.ask-list{scrollbar-width:thin;scrollbar-color:#D1D6DB transparent;padding-right:2px}
.ask-list::-webkit-scrollbar{width:4px}.ask-list::-webkit-scrollbar-thumb{background:#D1D6DB;border-radius:4px}
/* 11-05 비교확인서 발송 확인 시트 */
.cmp-all,.cmp-c{border-top:1px solid var(--line,#e5e8eb);padding:10px 0}.cmp-h{font-size:14.5px;margin-bottom:6px}.cmp-kv{display:grid;grid-template-columns:76px 1fr;gap:2px 8px;font-size:13px;margin:4px 0;align-items:start}.cmp-kv>span{color:var(--mute)}.cmp-kv>b{font-weight:600;overflow-wrap:anywhere}.cmp-kv>small{grid-column:2;color:var(--mute);font-size:12px}.cmp-why{font-size:12.5px;padding:6px 8px;height:auto;width:100%}.cmp-why-d{font-size:12.5px;color:var(--mute);margin-top:4px}.cmp-why-d div{margin-top:3px}.cmp-skip{font-size:12.5px;color:var(--mute);display:block;margin-top:6px}
.cmp-kv label,.cmp-skip{display:inline-flex;align-items:center;gap:4px;margin-right:10px;font-weight:500}.cmp-kv input[type=checkbox],.cmp-skip input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px;min-height:0;margin:0;padding:0;flex:none;appearance:auto;-webkit-appearance:checkbox}
