/* 🛒 채널 가격 · 재고 통합 (v640 · 설계 「48」 channel-hub.css 를 #chhub 아래로 스코프) — 공용 hd-* 는 shipdoc.css */
#chhub { color:var(--text, #1c2430); font-size:13.5px; background:#eef0e6; min-height:100%; }
#chhub * { box-sizing:border-box; }
#chhub .page-header { position:sticky; top:var(--chtop, 0px); z-index:40; background:#fff; border-bottom:1px solid #dcd8c0; }
#chhub .page-header__row { display:flex; align-items:flex-end; gap:14px; padding:11px 16px 0; flex-wrap:wrap; }
#chhub .crumb { display:flex; align-items:center; gap:6px; font-size:11.5px; color:#98a2b3; font-weight:600; }
#chhub .page-title { margin:0; font-size:19px; font-weight:800; letter-spacing:-.4px; }
#chhub .chip { border-radius:0 !important; padding:2px 8px; font-size:11.5px; font-weight:700; margin:0; }
#chhub .chip--accent { background:#ecead7; color:#4d5434; }
#chhub .ch-wrap { max-width:1560px; margin:0 auto; padding:12px 16px 34px; }
#chhub .hd-tabs { margin-bottom:0; }
#chhub .hd-tab__n.is-warn { color:#b4530a; }
#chhub .ch-btn--danger { color:#b45309; }
#chhub .ch-empty { padding:26px !important; text-align:center; color:#98a2b3; font-size:12px; }
#chhub .ch-nomaster { font-style:normal; font-size:9.5px; font-weight:800; color:#b4530a; margin-left:4px; }

/* ── 채널 카드 ── */
#chhub .ch-strip { display:grid; grid-template-columns:repeat(auto-fill, minmax(258px, 1fr)); grid-auto-rows:1fr; gap:9px; margin-bottom:11px; }
#chhub .ch-c { position:relative; display:flex; flex-direction:column; min-width:0; border:1px solid #dcd8c0; background:#fff; cursor:pointer; text-align:left; font:inherit; color:inherit; padding:0; }
#chhub .ch-c:hover { border-color:#c9c5a1; }
#chhub .ch-c.is-on { border-color:#5a6636; box-shadow:inset 0 3px 0 0 #5a6636; }
#chhub .ch-c.is-off { opacity:.55; }
#chhub .ch-c__h { display:flex; align-items:center; gap:5px; padding:10px 11px 0; min-width:0; }
#chhub .ch-c__p { flex:none; display:inline-flex; align-items:center; gap:5px; font-size:10px; font-weight:800; color:#98a2b3; }
#chhub .ch-c__p::before { content:''; width:7px; height:7px; background:var(--pc, #475467); }
#chhub .ch-c__n { flex:1 1 auto; min-width:72px; font-size:13.5px; font-weight:800; letter-spacing:-.2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#chhub .ch-c__b { flex:none; font-size:10px; font-weight:800; padding:1px 6px; background:#f6f5ec; color:#98a2b3; }
#chhub .ch-c__b.is-warn { background:#efe4b8; color:#6b5413; }
#chhub .ch-c__b.is-ok { background:#ecead7; color:#4d5434; }
#chhub .ch-c__r { flex:none; margin-right:2px; font-size:10.5px; color:#98a2b3; white-space:nowrap; }
#chhub .ch-c__mr { display:flex; align-items:center; gap:8px; padding:4px 11px 8px; min-width:0; }
#chhub .ch-c__m { flex:1; min-width:0; font-size:10.5px; color:#98a2b3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#chhub .ch-c__btns { flex:none; display:flex; gap:4px; }
#chhub .ch-autot { font-weight:800; color:#4d5434; }
#chhub .ch-c__fs { display:flex; flex-direction:column; border-top:1px solid #edebdb; }
#chhub .ch-c__f { display:flex; align-items:center; gap:9px; padding:8px 11px; min-width:0; min-height:44px; }
#chhub .ch-c__f + .ch-c__f { border-top:1px solid #edebdb; }
#chhub .ch-c__i { flex:none; width:18px; height:18px; display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:800; background:#f6f5ec; color:#6b7686; }
#chhub .ch-c__fb { flex:1; min-width:0; display:flex; flex-direction:column; gap:1px; }
#chhub .ch-c__fb b { display:flex; align-items:center; gap:7px; font-size:11.5px; font-weight:800; }
#chhub .ch-c__fb b em { font-style:normal; font-size:10.5px; color:#4d5434; }
#chhub .ch-c__fb small { font-size:10.5px; color:#98a2b3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#chhub .ch-c__bar { display:inline-block; width:54px; height:4px; background:#dcd8c0; position:relative; }
#chhub .ch-c__bar i { position:absolute; left:0; top:0; bottom:0; background:#5a6636; }
#chhub .ch-c__f.is-none .ch-c__fb b, #chhub .ch-c__f.is-none .ch-c__i { color:#cbd5e1; }
#chhub .ch-c__f.is-need { background:#fef9ee; }
#chhub .ch-c__f.is-need .ch-c__i { background:#efe4b8; color:#6b5413; }
#chhub .ch-c__f.is-none .ch-c__i { background:#fbfaf2; }
#chhub .ch-c__a { flex:none; border:0; background:none; font:inherit; font-size:11px; font-weight:800; color:#6b7686; cursor:pointer; padding:3px 4px; }
#chhub .ch-c__a:hover { color:#4d5434; text-decoration:underline; }
#chhub .ch-c__ft { margin-top:auto; display:flex; align-items:center; gap:8px; padding:7px 11px; border-top:1px solid #edebdb; background:#fbfaf2; font-size:10.5px; color:#98a2b3; min-width:0; }
#chhub .ch-c__ft > span:first-child { white-space:nowrap; }
#chhub .ch-c__ft b { color:#1c2430; font-weight:800; }
#chhub .ch-c__ft b.is-w { color:#b4530a; }
#chhub .ch-c__lt { flex:1; min-width:0; text-align:right; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#chhub .ch-c__eye { flex:none; border:1px solid #dcd8c0; background:#fff; font:inherit; font-size:10px; font-weight:800; color:#6b7686; padding:1px 6px; cursor:pointer; }
#chhub .ch-c.is-off .ch-c__eye { background:#f6f5ec; }
#chhub .ch-c--add { align-items:center; justify-content:center; gap:4px; border-style:dashed; background:#fbfaf2; color:#6b7686; font-size:12px; font-weight:800; min-height:150px; }
#chhub .ch-c--add small { font-size:10.5px; font-weight:600; color:#98a2b3; }
#chhub .ch-c--all { background:#fbfaf2; }
#chhub .ch-c--all.is-on { background:#f5f4e7; }
#chhub .ch-c--all .ch-c__i { background:#5a6636; color:#f2eeda; }
#chhub .ch-c__conn { font-size:9.5px; font-weight:800; padding:1px 5px; background:#f6f5ec; color:#6b7686; }
#chhub .ch-c__conn.is-api { background:#ecead7; color:#4d5434; }
/* API 단추 — 색 = 연동 상태 */
#chhub .ch-api { flex:none; display:inline-flex; align-items:center; gap:4px; height:20px; padding:0 6px; border:1px solid #dcd8c0; background:#fff; font:inherit; font-size:10px; font-weight:800; letter-spacing:.3px; color:#98a2b3; cursor:pointer; vertical-align:middle; }
#chhub .ch-api i { width:6px; height:6px; background:#cbd5e1; }
#chhub .ch-api:hover { border-color:currentColor; }
#chhub .ch-api.is-ok { border-color:#c9c5a1; background:#f5f4e7; color:#4d5434; }
#chhub .ch-api.is-ok i { background:#5a6636; }
#chhub .ch-api.is-warn { border-color:#d9c27e; background:#f7efcf; color:#6b5413; }
#chhub .ch-api.is-warn i { background:#b08a1e; }
#chhub .ch-api.is-err { border-color:#e0a58c; background:#fcefdc; color:#b45309; }
#chhub .ch-api.is-err i { background:#b45309; }
#chhub .ch-send { flex:none; height:20px; padding:0 7px; border:1px solid #dcd8c0; background:#fff; font:inherit; font-size:10px; font-weight:800; color:#cbd5e1; cursor:default; white-space:nowrap; font-variant-numeric:tabular-nums; }
#chhub .ch-send.is-on { border-color:#c9c5a1; color:#4d5434; cursor:pointer; }
#chhub .ch-send.is-on:hover { background:#f5f4e7; }
#chhub .ch-send.is-q { border-color:#4d5434; background:#5a6636; color:#f2eeda; }
#chhub .ch-send.is-q:hover { background:#4d5434; }
#chhub .ch-send:disabled { cursor:default; }

/* ── 헤더 오른쪽 ── */
#chhub .ch-sel { display:inline-flex; align-items:center; gap:6px; height:30px; padding:0 4px 0 10px; border:1px solid #5a6636; background:#f5f4e7; font-size:11.5px; color:#6b7686; }
#chhub .ch-sel i { width:7px; height:7px; background:var(--pc); }
#chhub .ch-sel b { color:#1c2430; }
#chhub .ch-sel button { border:0; background:none; font:inherit; font-size:11px; color:#98a2b3; cursor:pointer; padding:2px 6px; }
#chhub .ch-sel button:hover { color:#b45309; }
#chhub .ch-scope { display:inline-flex; align-items:center; border:1px solid #dcd8c0; height:30px; }
#chhub .ch-scope > span { padding:0 8px; font-size:10.5px; font-weight:800; color:#98a2b3; border-right:1px solid #dcd8c0; height:100%; display:flex; align-items:center; background:#fbfaf2; }
#chhub .ch-scope button { height:100%; padding:0 10px; border:0; background:#fff; font:inherit; font-size:11.5px; font-weight:800; color:#98a2b3; cursor:pointer; }
#chhub .ch-scope button + button { border-left:1px solid #dcd8c0; }
#chhub .ch-scope button.is-on { background:#5a6636; color:#f2eeda; }

/* ── 판매가 바꾸기 ── */
#chhub .ch-pu { padding:11px 14px 12px; display:flex; flex-direction:column; gap:7px; }
#chhub .ch-pu__h { display:flex; flex-direction:column; gap:4px; }
#chhub .ch-pu__h b { font-size:12.5px; }
#chhub .ch-pu__h span { font-size:11.5px; color:#6b7686; line-height:1.6; word-break:keep-all; }
#chhub .ch-pu__cols { font-size:10.5px; color:#98a2b3; line-height:1.6; word-break:keep-all; }
#chhub .ch-pu__a { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-top:2px; }
#chhub .ch-pu__r { font-size:11.5px; color:#4d5434; padding:0 4px; }
#chhub .ch-pu__r em { font-style:normal; color:#b4530a; font-weight:800; }

/* ── 통합 표 ── */
#chhub .ch-bar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:8px 12px; border-bottom:1px solid #e8e5d1; }
#chhub .ch-chip { display:inline-flex; align-items:center; gap:5px; height:26px; padding:0 9px; border:1px solid #dcd8c0; background:#fff; font:inherit; font-size:11px; font-weight:800; color:#6b7686; cursor:pointer; }
#chhub .ch-chip b { font-size:10.5px; color:#cbd5e1; font-variant-numeric:tabular-nums; }
#chhub .ch-chip.is-on { background:#5a6636; border-color:#4d5434; color:#f2eeda; }
#chhub .ch-chip.is-on b { color:rgba(242,238,218,.72); }
#chhub .ch-search { height:28px; width:200px; border:1px solid #dcd8c0; background:#fff; padding:0 9px; font:inherit; font-size:12px; }
#chhub .ch-search:focus { outline:none; border-color:#5a6636; }
#chhub .ch-tbw { overflow:auto; max-height:calc(100vh - var(--chtop, 0px) - 300px); min-height:280px; }
#chhub .ch-tb { border-collapse:separate; border-spacing:0; width:max-content; min-width:100%; }
#chhub .ch-tb th, #chhub .ch-tb td { border-bottom:1px solid #edebdb; border-right:1px solid #edebdb; padding:0; vertical-align:middle; background:#fff; }
#chhub .ch-tb thead th { position:sticky; top:0; z-index:3; background:#f6f5ec; font-size:10.5px; font-weight:800; color:#6b7686; text-align:left; padding:7px 9px; white-space:nowrap; }
#chhub .ch-tb thead tr:nth-child(2) th { top:31px; font-weight:700; color:#98a2b3; font-size:10px; padding:4px 9px; }
#chhub .ch-tb .ch-stk { position:sticky; left:0; z-index:2; }
#chhub .ch-tb thead .ch-stk { z-index:4; }
#chhub .ch-tb .ch-stk2 { position:sticky; left:230px; z-index:2; box-shadow:1px 0 0 #dcd8c0; }
#chhub .ch-tb thead .ch-stk2 { z-index:4; }
#chhub .ch-th__p { display:flex; align-items:center; gap:5px; }
#chhub .ch-th__p::before { content:''; width:7px; height:7px; background:var(--pc, #475467); }
#chhub .ch-prod { width:230px; padding:7px 10px; }
#chhub .ch-prod b { display:block; font-size:12px; font-family:'SFMono-Regular',Menlo,monospace; }
#chhub .ch-prod span { display:block; font-size:10.5px; color:#98a2b3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:208px; }
#chhub .ch-av { width:86px; padding:7px 10px; text-align:right; font-variant-numeric:tabular-nums; }
#chhub .ch-av b { font-size:13px; }
#chhub .ch-av small { display:block; font-size:10px; color:#98a2b3; }
#chhub .ch-av.is-zero b { color:#b45309; }
#chhub .ch-cell { display:grid; grid-template-columns:1fr auto; gap:1px 8px; width:148px; min-height:44px; padding:6px 9px; border:0; background:transparent; text-align:left; font:inherit; color:#1c2430; cursor:pointer; font-variant-numeric:tabular-nums; }
#chhub .ch-cell:hover { background:#f5f4e7; }
#chhub .ch-cell__q { font-size:12.5px; font-weight:800; }
#chhub .ch-cell__q small { font-size:10.5px; font-weight:600; color:#98a2b3; margin-left:3px; }
#chhub .ch-cell__p { grid-column:1 / -1; font-size:11px; color:#6b7686; }
#chhub .ch-cell__p small { color:#98a2b3; margin-left:4px; text-decoration:line-through; }
#chhub .ch-cell__s { align-self:start; font-size:9.5px; font-weight:800; padding:1px 5px; white-space:nowrap; }
#chhub .ch-cell.is-q .ch-cell__s, #chhub .ch-cell.is-qp .ch-cell__s { background:#fef3e2; color:#b4530a; }
#chhub .ch-cell.is-p .ch-cell__s { background:#ede4f5; color:#5b3d78; }
#chhub .ch-cell.is-out .ch-cell__s { background:#fcefdc; color:#b45309; }
#chhub .ch-cell.is-ok .ch-cell__s { background:none; color:#cbd5e1; padding:1px 0; }
#chhub .ch-cell.is-ex { opacity:.5; }
#chhub .ch-cell.is-ex .ch-cell__s { background:#f6f5ec; color:#98a2b3; }
#chhub .ch-cell.is-none { cursor:default; color:#cbd5e1; font-size:11px; align-items:center; }
#chhub .ch-cell.is-none:hover { background:transparent; }
#chhub .ch-cell.is-sel { box-shadow:inset 0 0 0 2px #5a6636; background:#f5f4e7; }
#chhub .ch-dash { color:#cbd5e1; }
#chhub .ch-lg { display:flex; gap:10px; flex-wrap:wrap; font-size:10.5px; color:#98a2b3; padding:7px 12px; border-top:1px solid #edebdb; background:#fbfaf2; }
#chhub .ch-lg i { display:inline-block; width:9px; height:9px; margin-right:4px; vertical-align:-1px; }

/* ── 단독 보기 ── */
#chhub .ch-vh { display:flex; align-items:center; gap:9px; flex-wrap:wrap; padding:9px 12px; border-bottom:1px solid #e8e5d1; }
#chhub .ch-vh > b { font-size:12.5px; }
#chhub .ch-vh > span { font-size:11px; color:#98a2b3; }
#chhub .ch-vh > span b { color:#1c2430; }
#chhub .ch-vh__r { margin-left:auto; display:flex; gap:4px; align-items:center; flex-wrap:wrap; }
#chhub .ch-one { width:100%; }
#chhub .ch-one thead th { position:sticky; top:0; z-index:2; background:#f6f5ec; }
#chhub .ch-one td { vertical-align:middle; }
#chhub .ch-one tr.is-ex td { opacity:.5; }
#chhub .ch-ck-td { width:30px; text-align:center; }
#chhub .ch-ck { width:16px; height:16px; padding:0; border:1.5px solid #c9c5a1; background:#fff; font-size:10px; font-weight:800; color:#fff; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
#chhub .ch-ck.is-on { background:#5a6636; border-color:#5a6636; }
#chhub .ch-nm { font-size:11.5px; max-width:420px; }
#chhub .ch-cd { font-family:'SFMono-Regular',Menlo,monospace; font-size:9.5px; color:#98a2b3; margin-left:4px; }
#chhub .ch-hot { background:#f6f2df !important; text-align:right; white-space:nowrap; }
#chhub .ch-hot small { display:block; font-size:9.5px; color:#98a2b3; margin-top:2px; }
#chhub th.ch-hot { background:#efe8c8 !important; }
#chhub .ch-ein { width:66px; height:26px; border:1px solid #dcd8c0; background:#fff; padding:0 7px; font:inherit; font-size:12px; font-weight:800; text-align:right; font-variant-numeric:tabular-nums; }
#chhub .ch-ein.is-p { width:86px; }
#chhub .ch-ein:focus { outline:none; border-color:#5a6636; box-shadow:0 0 0 3px rgba(90,102,54,.12); }
#chhub .ch-ein:disabled { background:#f6f5ec; color:#98a2b3; }
#chhub .ch-up { color:#4d5434; } #chhub .ch-dn { color:#b45309; }
#chhub .ch-why { font-size:11px; color:#6b7686; white-space:nowrap; }
#chhub .ch-tagx { display:inline-block; font-size:10px; font-weight:800; padding:2px 7px; white-space:nowrap; background:#f6f5ec; color:#98a2b3; }
#chhub .ch-tagx.is-inc, #chhub .ch-tagx.is-ok, #chhub .ch-tagx.is-in { background:#ecead7; color:#4d5434; }
#chhub .ch-tagx.is-diff { background:#ede4f5; color:#5b3d78; }
#chhub .ch-tagx.is-plan { background:#fef3e2; color:#b4530a; }
#chhub .ch-tagx.is-out { background:#fcefdc; color:#b45309; }
#chhub .ch-st { min-width:130px; white-space:nowrap; }
#chhub .ch-st__w { display:inline-flex; align-items:center; gap:4px; }
#chhub .ch-bolt { width:26px; height:24px; border:1px solid #dcd8c0; background:#fff; cursor:pointer; color:#4d5434; display:inline-flex; align-items:center; justify-content:center; }
#chhub .ch-bolt:disabled { color:#cbd5e1; cursor:default; }
#chhub .ch-bolt:hover:not(:disabled) { border-color:#5a6636; background:#f5f4e7; }
#chhub .ch-sub { display:block; font-size:10px; color:#98a2b3; font-family:'SFMono-Regular',Menlo,monospace; margin-top:1px; }
#chhub .ch-nv b { display:block; font-size:12px; }
#chhub .ch-nv small { display:block; font-size:10.5px; color:#98a2b3; margin-top:2px; max-width:200px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; border-top:1px dotted #dcd8c0; padding-top:2px; }
#chhub .ch-mt { font-size:9.5px; font-weight:800; padding:1px 5px; }
#chhub .ch-mt.is-0 { background:#efe4b8; color:#6b5413; }
#chhub .ch-mt.is-1 { background:#dbe8f5; color:#2d5a85; }
#chhub .ch-mt.is-2 { background:#ecead7; color:#4d5434; }

/* ── 드로어 ── */
#chhub .ch-dr { position:fixed; top:0; right:0; bottom:0; z-index:120; width:min(400px, 100%); background:#fff; border-left:1px solid #dcd8c0; box-shadow:-18px 0 40px rgba(16,24,40,.16); display:flex; flex-direction:column; }
#chhub .ch-dr__h { display:flex; align-items:flex-start; gap:9px; padding:13px 15px; border-bottom:1px solid #dcd8c0; }
#chhub .ch-dr__h b { display:block; font-size:14px; }
#chhub .ch-dr__h small { display:block; font-size:11px; color:#98a2b3; margin-top:2px; }
#chhub .ch-dr__b { flex:1; min-height:0; overflow:auto; padding:13px 15px; display:flex; flex-direction:column; gap:14px; }
#chhub .ch-dr__f { display:flex; gap:7px; padding:11px 15px; border-top:1px solid #dcd8c0; background:#fbfaf2; }
#chhub .ch-cmp { display:grid; grid-template-columns:auto 1fr 1fr; border:1px solid #dcd8c0; }
#chhub .ch-cmp > * { padding:7px 10px; border-bottom:1px solid #edebdb; font-size:12px; font-variant-numeric:tabular-nums; }
#chhub .ch-cmp > :nth-last-child(-n+3) { border-bottom:0; }
#chhub .ch-cmp .is-h { font-size:10.5px; font-weight:800; color:#98a2b3; background:#f6f5ec; }
#chhub .ch-cmp .is-k { font-size:11px; font-weight:800; color:#6b7686; }
#chhub .ch-cmp .is-diff { color:#b4530a; font-weight:800; }
#chhub .ch-in { height:32px; width:100%; border:1px solid #dcd8c0; background:#fff; padding:0 10px; font:inherit; font-size:13px; font-weight:800; text-align:right; font-variant-numeric:tabular-nums; }
#chhub .ch-in:focus { outline:none; border-color:#5a6636; box-shadow:0 0 0 3px rgba(90,102,54,.12); }
#chhub .ch-sec { display:flex; flex-direction:column; gap:6px; }
#chhub .ch-sec > span { font-size:10.5px; font-weight:800; color:#cbd5e1; letter-spacing:.2px; }
#chhub .ch-oth { display:grid; grid-template-columns:1fr auto auto; gap:4px 10px; font-size:11.5px; font-variant-numeric:tabular-nums; }
#chhub .ch-oth b { font-weight:800; }
#chhub .ch-sw { display:inline-flex; align-items:center; gap:8px; border:0; background:none; font:inherit; font-size:12px; font-weight:700; color:#6b7686; cursor:pointer; padding:0; text-align:left; }
#chhub .ch-sw span { flex:none; width:28px; height:16px; background:#dcd8c0; position:relative; }
#chhub .ch-sw span::after { content:''; position:absolute; top:2px; left:2px; width:12px; height:12px; background:#fff; transition:left .12s; }
#chhub .ch-sw.is-on span { background:#5a6636; }
#chhub .ch-sw.is-on span::after { left:14px; }

/* ── 반영 대기 · 규칙 ── */
#chhub .ch-qg { border:1px solid #dcd8c0; background:#fff; }
#chhub .ch-qg + .ch-qg { margin-top:10px; }
#chhub .ch-qg__h { display:flex; align-items:center; gap:9px; flex-wrap:wrap; padding:9px 12px; border-bottom:1px solid #edebdb; }
#chhub .ch-qg__h b { font-size:13px; }
#chhub .ch-qg__h small { font-size:11px; color:#98a2b3; }
#chhub .ch-pend { display:flex; align-items:center; gap:9px; flex-wrap:wrap; padding:8px 12px; background:#fef3e2; color:#b4530a; font-size:11.5px; font-weight:700; }
#chhub .ch-rule td { vertical-align:middle; }
#chhub .ch-rin { height:28px; width:64px; border:1px solid #dcd8c0; background:#fff; padding:0 7px; font:inherit; font-size:12px; font-weight:700; text-align:right; }
#chhub .ch-rin:focus { outline:none; border-color:#5a6636; }
#chhub .ch-rin:disabled { background:#f6f5ec; color:#cbd5e1; }
#chhub .ch-rsel { height:28px; border:1px solid #dcd8c0; background:#fff; font:inherit; font-size:11.5px; padding:0 6px; }
#chhub .ch-seg { display:inline-flex; border:1px solid #dcd8c0; }
#chhub .ch-seg button { height:26px; padding:0 9px; border:0; background:#fff; font:inherit; font-size:11px; font-weight:800; color:#98a2b3; cursor:pointer; white-space:nowrap; }
#chhub .ch-seg button + button { border-left:1px solid #dcd8c0; }
#chhub .ch-seg button.is-on { background:#5a6636; color:#f2eeda; }
#chhub .ch-seg button:disabled { color:#cbd5e1; cursor:default; }

/* ── 모달 ── */
#chhub .ch-ov { position:fixed; inset:0; z-index:150; background:rgba(16,24,40,.38); display:flex; align-items:center; justify-content:center; padding:24px; }
#chhub .ch-md { width:min(520px, 100%); max-height:88vh; display:flex; flex-direction:column; background:#fff; border:1px solid #dcd8c0; box-shadow:0 24px 48px rgba(16,24,40,.24); }
#chhub .ch-md__h { display:flex; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid #dcd8c0; }
#chhub .ch-md__h b { display:block; font-size:14px; }
#chhub .ch-md__h small { display:block; font-size:11px; color:#98a2b3; margin-top:2px; }
#chhub .ch-md__b { flex:1; min-height:0; overflow:auto; padding:14px 16px; display:flex; flex-direction:column; gap:11px; }
#chhub .ch-md__f { display:flex; align-items:center; gap:7px; padding:11px 16px; border-top:1px solid #dcd8c0; background:#fbfaf2; }
#chhub .ch-md__note { padding:8px 11px; background:#f5f4e7; color:#4d5434; font-size:11.5px; font-weight:700; }
#chhub .ch-af { display:grid; grid-template-columns:150px minmax(0,1fr); gap:10px; align-items:center; }
#chhub .ch-af > span { font-size:11.5px; font-weight:800; color:#6b7686; }
#chhub .ch-af > span small { display:block; font-size:10px; font-weight:600; color:#98a2b3; margin-top:1px; }
#chhub .ch-af .hd-in { width:100%; }
#chhub .ch-test { padding:9px 11px; font-size:11.5px; font-weight:700; border:1px dashed #dcd8c0; color:#98a2b3; display:flex; align-items:center; gap:7px; }
#chhub .ch-test.is-ok { border-style:solid; border-color:#c9c5a1; background:#f5f4e7; color:#4d5434; }
#chhub .ch-test.is-fail { border-style:solid; border-color:#b45309; background:#fcefdc; color:#b45309; }

/* ── 예약 · 자동화 ── */
#chhub .ch-af2 { padding:0; }
#chhub .ch-ah { display:flex; align-items:center; gap:9px; flex-wrap:wrap; padding:11px 14px; border-bottom:1px solid #e8e5d1; background:#fbfaf2; }
#chhub .ch-ah.is-on { background:#f5f4e7; }
#chhub .ch-ah__dot { width:9px; height:9px; background:#cbd5e1; flex:none; }
#chhub .ch-ah.is-on .ch-ah__dot { background:#5a6636; box-shadow:0 0 0 3px rgba(90,102,54,.18); }
#chhub .ch-ah b { font-size:13px; }
#chhub .ch-ah > span:not(.ch-ah__dot):not(.ch-ah__r) { font-size:11.5px; color:#6b7686; }
#chhub .ch-ah__r { margin-left:auto; display:flex; gap:5px; }
#chhub .ch-ar { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; padding:11px 14px; border-bottom:1px solid #edebdb; align-items:start; }
#chhub .ch-ar__l { font-size:12px; font-weight:800; color:#6b7686; padding-top:5px; }
#chhub .ch-ar__b { display:flex; flex-direction:column; gap:6px; min-width:0; align-items:flex-start; }
#chhub .ch-ar__b > small { font-size:10.5px; color:#98a2b3; line-height:1.55; align-self:stretch; }
#chhub .ch-at { display:flex; gap:5px; flex-wrap:wrap; align-items:center; }
#chhub .ch-tm { display:inline-flex; align-items:center; gap:4px; height:28px; padding:0 4px 0 10px; border:1px solid #c9c5a1; background:#f5f4e7; }
#chhub .ch-tm b { font-size:12.5px; font-variant-numeric:tabular-nums; }
#chhub .ch-tm button { border:0; background:none; font-size:10px; color:#98a2b3; cursor:pointer; padding:2px 5px; }
#chhub .ch-tm button:hover { color:#b45309; }
#chhub .ch-tmin { height:28px; border:1px dashed #dcd8c0; background:#fff; padding:0 8px; font:inherit; font-size:12px; }
#chhub .ch-tmin:focus { outline:none; border-color:#5a6636; border-style:solid; }
#chhub .ch-tg { display:inline-flex; align-items:center; gap:8px; padding:6px 10px 6px 8px; border:1px solid #dcd8c0; background:#fff; font:inherit; color:#1c2430; cursor:pointer; text-align:left; }
#chhub .ch-tg b { display:block; font-size:11.5px; }
#chhub .ch-tg small { display:block; font-size:10px; color:#98a2b3; }
#chhub .ch-tg__b { flex:none; width:16px; height:16px; border:1.5px solid #c9c5a1; display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:800; color:#fff; }
#chhub .ch-tg.is-on { border-color:#5a6636; background:#f5f4e7; }
#chhub .ch-tg.is-on .ch-tg__b { background:#5a6636; border-color:#5a6636; }
#chhub .ch-tg.is-dis { opacity:.5; cursor:default; }
#chhub .ch-more { border:0; background:none; padding:0; font:inherit; font-size:12px; font-weight:800; color:#6b7686; cursor:pointer; text-align:left; }
#chhub .ch-more span { font-weight:600; color:#98a2b3; margin-left:6px; font-size:11px; }
#chhub .ch-amore { display:flex; flex-direction:column; gap:9px; padding:9px 0 2px; }
#chhub .ch-afoot { display:flex; align-items:center; gap:10px; padding:11px 14px; background:#fbfaf2; }
#chhub .ch-afoot span { flex:1; font-size:11px; color:#98a2b3; }
#chhub .ch-lg2 { display:flex; align-items:center; gap:9px; padding:8px 12px; border-bottom:1px solid #edebdb; }
#chhub .ch-lg2__d { flex:1; min-width:0; font-size:11.5px; color:#6b7686; line-height:1.5; }
#chhub .ch-lg2__d em { font-style:normal; color:#b45309; font-weight:700; }
@media (max-width:760px) {
  #chhub .ch-strip { grid-template-columns:1fr; }
  #chhub .ch-af { grid-template-columns:1fr; gap:4px; }
  #chhub .ch-ar { grid-template-columns:1fr; gap:6px; }
  #chhub .ch-tb .ch-stk2 { position:static; box-shadow:none; }
  #chhub .ch-prod { width:170px; }
  #chhub .ch-prod span { max-width:150px; }
}

/* ── v642 — 쿠팡 · 네이버 도구 내장(통합 미리보기 ↔ 도구 전체 기능) ── */
#chhub .ch-subt { display:flex; margin:0 0 10px; border:1px solid #dcd8c0; background:#fff; width:max-content; max-width:100%; }
#chhub .ch-subt button { font:inherit; font-size:12px; font-weight:800; padding:7px 14px; border:0; border-right:1px solid #dcd8c0; background:#fff; color:#6b7686; cursor:pointer; display:flex; flex-direction:column; align-items:flex-start; gap:2px; text-align:left; }
#chhub .ch-subt button:last-child { border-right:0; }
#chhub .ch-subt button.is-on { background:#2f3a2a; color:#fff; }
#chhub .ch-subt small { font-size:10.5px; font-weight:500; opacity:.7; }
#chhub .ch-embed { border:1px solid #dcd8c0; background:#fff; margin-bottom:12px; }
#chhub .ch-cptabs { display:flex; align-items:center; gap:2px; padding:0 8px; border-bottom:1px solid #dcd8c0; background:#f6f5ec; flex-wrap:wrap; }
#chhub .ch-cptab { font:inherit; font-size:12px; font-weight:700; padding:9px 12px; border:0; border-bottom:2px solid transparent; background:none; color:#6b7686; cursor:pointer; }
#chhub .ch-cptab em { font-style:normal; font-size:11px; color:#9aa3ad; margin-left:4px; font-weight:700; }
#chhub .ch-cptab.is-on { color:#2f3a2a; border-bottom-color:#2f3a2a; }
#chhub .ch-cptabs__r { margin-left:auto; font-size:11px; color:#6b7686; padding:6px 8px; display:flex; align-items:center; gap:6px; }
#chhub .ch-cplink { font:inherit; font-size:11px; border:1px solid #dcd8c0; background:#fff; padding:2px 7px; cursor:pointer; color:#2f3a2a; }
#chhub .ch-cpmain { padding:12px 14px 18px; }
#chhub #nv .ch-embed__top { display:flex; align-items:center; gap:7px; flex-wrap:wrap; padding:8px 12px; border-bottom:1px solid #dcd8c0; background:#f6f5ec; }
#chhub #nv .ns-wrap { padding:10px 12px 16px; }
#chhub #nv .ns-stores--one { grid-template-columns:1fr; }
#chhub .ch-lg2__f { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:-4px 0 8px 86px; font-size:11px; color:#9a5a2e; }

/* ── v643 — 채널 추가 모달(시안 §10): 플랫폼 타일 5칸 · 입력 라벨 170px · 연결 방식 · 검증 띠 ── */
#chhub .ch-md--add { width:min(580px, 100%); }
#chhub .ch-md__warn { padding:8px 11px; background:#fdecec; color:#9a2e2e; font-size:11.5px; font-weight:700; border-left:3px solid #c94b4b; }
#chhub .ch-pts { display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); border:1px solid #dcd8c0; }
#chhub .ch-pt { display:flex; flex-direction:column; align-items:flex-start; gap:2px; min-width:0; padding:8px 9px; border:0; border-right:1px solid #dcd8c0; background:#fff; font:inherit; color:#2f3a2a; cursor:pointer; text-align:left; }
#chhub .ch-pt:last-child { border-right:0; }
#chhub .ch-pt i { width:8px; height:8px; background:var(--pc); margin-bottom:3px; }
#chhub .ch-pt b { font-size:11.5px; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
#chhub .ch-pt small { font-size:10px; color:#98a2b3; }
#chhub .ch-pt:hover:not(.is-on) { background:#f6f5ec; }
#chhub .ch-pt.is-on { background:#5a6636; color:#f2eeda; }
#chhub .ch-pt.is-on small { color:rgba(242,238,218,.72); }
#chhub .ch-pt.is-on i { box-shadow:0 0 0 1px rgba(255,255,255,.6); }
#chhub .ch-af--add { grid-template-columns:170px minmax(0,1fr); align-items:start; }
#chhub .ch-af--add > span { padding-top:6px; }
#chhub .ch-af--add em { font-style:normal; font-size:9.5px; font-weight:800; color:#9a5a2e; margin-left:3px; }
#chhub .ch-cn { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
#chhub .ch-cn__o { display:flex; align-items:flex-start; gap:8px; padding:9px 10px; border:1px solid #dcd8c0; background:#fff; font:inherit; color:#2f3a2a; cursor:pointer; text-align:left; }
#chhub .ch-cn__o b { display:block; font-size:12px; }
#chhub .ch-cn__o small { display:block; font-size:10.5px; color:#98a2b3; line-height:1.5; margin-top:2px; }
#chhub .ch-cn__o .ch-tg__b { border-radius:50%; font-size:8px; margin-top:1px; }
#chhub .ch-cn__o.is-on { border-color:#5a6636; background:#f1f3e6; }
#chhub .ch-cn__o.is-on .ch-tg__b { background:#5a6636; border-color:#5a6636; }
#chhub .ch-cn__o.is-dis { opacity:.55; cursor:default; }
#chhub .ch-addnote { font-size:11px; color:#6b7686; line-height:1.6; padding:8px 10px; background:#f6f5ec; }
@media (max-width:640px) { #chhub .ch-pts { grid-template-columns:repeat(5, minmax(0,1fr)); } #chhub .ch-pt b { font-size:10.5px; } #chhub .ch-af--add { grid-template-columns:1fr; } #chhub .ch-cn { grid-template-columns:1fr; } }

/* ── v645 — 전체 스토어 판매가 변경 모달 ── */
#chhub .ch-md--pu { width:min(620px, 100%); }
#chhub .ch-pu__chs { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:6px; max-height:300px; overflow:auto; }
#chhub .ch-pu__ch { font:inherit; color:#2f3a2a; text-align:left; display:grid; grid-template-columns:16px 8px minmax(0,1fr); grid-template-rows:auto auto; column-gap:8px; align-items:center; padding:7px 9px; border:1px solid #dcd8c0; background:#fff; cursor:pointer; }
#chhub .ch-pu__ch i { width:8px; height:8px; grid-row:1 / span 2; }
#chhub .ch-pu__ch b { font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#chhub .ch-pu__ch small { grid-column:3; font-size:10.5px; color:#98a2b3; }
#chhub .ch-pu__ch .ch-tg__b { grid-row:1 / span 2; }
#chhub .ch-pu__ch.is-on { border-color:#5a6636; background:#f1f3e6; }
#chhub .ch-pu__ch.is-on .ch-tg__b { background:#5a6636; border-color:#5a6636; }
#chhub .ch-lnk { font:inherit; font-size:10.5px; font-weight:700; color:#5a6636; background:none; border:0; cursor:pointer; margin-left:6px; text-decoration:underline; }
#chhub .ch-pu__res { font-size:11.5px; color:#2f3a2a; padding:9px 11px; background:#f1f3e6; border-left:3px solid #5a6636; line-height:1.6; }
#chhub .ch-pu__res em { font-style:normal; color:#9a2e2e; }
#chhub .ch-pu__miss { font-size:11px; color:#9a5a2e; margin-top:3px; }
#chhub .ch-pu__n { font-size:11.5px; color:#6b7686; font-weight:700; }
@media (max-width:640px) { #chhub .ch-pu__chs { grid-template-columns:1fr; } }

/* ── v650 — ₩ 전체 스토어 판매가 변경 2단계(시안 §10) ── */
#chhub .gp-md { width:min(780px,100%); }
#chhub .gp-steps { display:flex; align-items:center; gap:8px; padding:9px 16px; border-bottom:1px solid #e8e4cf; background:#f6f5ec; }
#chhub .gp-steps em { flex:0 0 26px; height:1px; background:#dcd8c0; }
#chhub .gp-st { display:inline-flex; align-items:center; gap:7px; font-size:11.5px; font-weight:800; color:#98a2b3; }
#chhub .gp-st i { width:18px; height:18px; display:flex; align-items:center; justify-content:center; font-style:normal; font-size:10px; background:#ecead8; color:#6b7686; }
#chhub .gp-st.is-on { color:#2f3a2a; } #chhub .gp-st.is-on i { background:#5a6636; color:#f2eeda; }
#chhub .gp-st.is-done { color:#3f4a2a; } #chhub .gp-st.is-done i { background:#e5e9d6; color:#3f4a2a; }
#chhub .gp-form { border:1px solid #dcd8c0; }
#chhub .gp-form__t { display:flex; align-items:center; gap:8px; padding:8px 11px; border-bottom:1px solid #e8e4cf; }
#chhub .gp-form__t b { font-size:12px; flex:1; }
#chhub .gp-cols { display:grid; grid-template-columns:1fr 1.3fr 1.2fr 1fr .8fr; }
#chhub .gp-cols > span { display:flex; flex-direction:column; gap:1px; padding:8px 10px; border-right:1px solid #e8e4cf; min-width:0; }
#chhub .gp-cols > span:last-child { border-right:0; }
#chhub .gp-cols em { font-style:normal; font-family:'SFMono-Regular',Menlo,monospace; font-size:10px; font-weight:800; color:#98a2b3; }
#chhub .gp-cols b { font-size:12px; }
#chhub .gp-cols small { font-size:10px; color:#98a2b3; line-height:1.35; }
#chhub .gp-note { padding:7px 11px; font-size:10.5px; color:#6b7686; background:#f6f5ec; border-top:1px solid #e8e4cf; line-height:1.5; }
#chhub .gp-pgs { display:flex; flex-direction:column; border:1px solid #dcd8c0; }
#chhub .gp-pg { display:grid; grid-template-columns:124px minmax(0,1fr); }
#chhub .gp-pg + .gp-pg { border-top:1px solid #e8e4cf; }
#chhub .gp-pg__h { display:flex; align-items:center; gap:6px; padding:8px 10px; border:0; border-right:1px solid #e8e4cf; background:#f6f5ec; font:inherit; color:#2f3a2a; cursor:pointer; text-align:left; }
#chhub .gp-pg__h i { width:7px; height:7px; background:var(--pc); }
#chhub .gp-pg__h b { font-size:12px; } #chhub .gp-pg__h small { margin-left:auto; font-size:10.5px; color:#98a2b3; font-weight:700; }
#chhub .gp-pg__h.is-on .ch-tg__b { background:#5a6636; border-color:#5a6636; }
#chhub .gp-pg__l { display:flex; flex-wrap:wrap; gap:5px; padding:7px 9px; }
#chhub .gp-s { display:inline-flex; align-items:center; gap:6px; height:28px; padding:0 9px 0 7px; border:1px solid #dcd8c0; background:#fff; font:inherit; color:#98a2b3; cursor:pointer; }
#chhub .gp-s b { font-size:11.5px; font-weight:800; } #chhub .gp-s small { font-size:9.5px; font-weight:800; color:#cbd5e1; }
#chhub .gp-s.is-on { border-color:#c9c5a1; background:#f1f3e6; color:#2f3a2a; }
#chhub .gp-s.is-on .ch-tg__b { background:#5a6636; border-color:#5a6636; }
#chhub .gp-file { display:flex; align-items:center; gap:9px; padding:9px 16px; border-bottom:1px solid #e8e4cf; font-size:12px; color:#3f4a2a; }
#chhub .gp-file span { color:#98a2b3; font-size:11px; } #chhub .gp-file .ch-lnk { margin-left:auto; }
#chhub .gp-sum { display:flex; border-bottom:1px solid #e8e4cf; }
#chhub .gp-k { flex:1; display:flex; flex-direction:column; gap:1px; padding:10px 14px; border-right:1px solid #e8e4cf; font-size:10.5px; color:#98a2b3; font-weight:700; min-width:0; }
#chhub .gp-k:last-child { border-right:0; }
#chhub .gp-k b { font-size:19px; font-weight:800; color:#2f3a2a; font-variant-numeric:tabular-nums; line-height:1.15; }
#chhub .gp-k small { font-size:10px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#chhub .gp-k.is-main { background:#f1f3e6; } #chhub .gp-k.is-main b { color:#3f4a2a; }
#chhub .gp-k.is-warn b { color:#9a5a2e; }
#chhub .gp-tabs { display:flex; align-items:center; gap:5px; padding:8px 16px; }
#chhub .gp-tw { max-height:46vh; overflow:auto; border-top:1px solid #e8e4cf; }
#chhub .gp-tb thead th { position:sticky; top:0; z-index:1; }
#chhub .gp-tb tr.is-off td { opacity:.45; }
#chhub .gp-sub { display:block; font-size:10px; color:#98a2b3; font-weight:600; font-family:inherit; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:220px; }
#chhub .gp-chn { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:700; }
#chhub .gp-chn i { width:7px; height:7px; background:var(--pc); }
#chhub .gp-up { color:#9a2e2e; } #chhub .gp-dn { color:#2d5a85; }
#chhub .gp-ck { width:18px; height:18px; border:1.5px solid #c9c5a1; background:#fff; font-size:10px; font-weight:800; color:#fff; cursor:pointer; padding:0; }
#chhub .gp-ck.is-on { background:#5a6636; border-color:#5a6636; }
#chhub .gp-md .ch-md__b { gap:12px; }
@media (max-width:640px) { #chhub .gp-cols { grid-template-columns:1fr 1fr; } #chhub .gp-pg { grid-template-columns:1fr; } #chhub .gp-pg__h { border-right:0; border-bottom:1px solid #e8e4cf; } #chhub .gp-sum { flex-wrap:wrap; } #chhub .gp-k { flex:1 1 45%; } }
