.mt0 { margin-top:0; }
.mt4 { margin-top:4px; }
.mt8 { margin-top:8px; }
.mt32 { margin-top:32px; }
.mt56 { margin-top:56px; }
.mt64 { margin-top:64px; }
.mt88 { margin-top:88px; }

.mb16 { margin-bottom:16px; }
.mb20 { margin-bottom:20px; }

.ml4 { margin-left:4px; }
.ml8 { margin-left:8px; }

.pt10 { padding-top:10px; }
.pt16 { padding-top:16px; }

.pb8 { padding-bottom:8px; }
.pb10 { padding-bottom:10px; }
.pb16 { padding-bottom:16px; }
.p16 { padding:16px; }
.p32 { padding:32px; }

.gap0 { gap:0px; }
.gap2 { gap:2px; }
.gap8 { gap:8px; }
.gap24 { gap:24px; }
.gap40 { gap:40px; }
.column-wrap.gap40 .column + .column:not(.no-line) { padding-left:40px; }
.size12 { font-size:12px; }
.size14 { font-size:14px; }
.size15 { font-size:15px !important; }
.size16 { font-size:16px; }
.size18 { font-size:18px; }
.lh24 { line-height:24px; }
.lh32 { line-height:32px; }
.tag.xlarge { padding:6px 12px; font-size:13px; }
.tag.xxlarge { padding:11px 24px; font-size:14px; border-radius:8px; }

.btn.xsmall { padding:6px 12px; font-size:12px; line-height:16px; border-radius:4px; }
.btn.gr-line { border-color:#ccc; color:#222; }
.ico-btn.w16 { width:16px; }

.cnt-rbox.sd { box-shadow:0px 4px 8px 0px #00000014; }
.cnt-rbox.br4 { border-radius:4px; }
.cnt-rbox.br8 { border-radius:8px; }
.cnt-rbox.br12 { border-radius:12px; }
.cnt-rbox.line-cc { border:1px solid #ccc; border-radius:12px; }
.cnt-rbox.white {  background-color:#fff; } 
.sub-cnt > *[class*='_inner'] + *[class*='_inner'],
.sub-cnt > *[class*='_sec'] + *[class*='_inner'] {  margin-top:80px; }

.tab-menu.type1 li.red .btn-tab.on { position:relative; }
.tab-menu.type1 li.red .btn-tab.on::after { content:""; width:6px; height:6px; position:absolute; right:-8px; top:0; border-radius:50%; background-color:var(--color-red); }
.tab-menu.type1 li.red + li { margin-left:8px; }

.grid-wrap {  position:relative; }
.grid-wrap .item {  display:block; position:absolute; z-index:1;  }
.grid-wrap .item.muuri-item-dragging {  z-index:3; background-color:#fff; box-shadow:0px 0px 10px 0px #00000014; }
.grid-wrap .item.muuri-item-releasing {  z-index:2; }
.grid-wrap .item.muuri-item-hidden {  z-index:0; }
.grid-wrap .item-content {  position:relative; width:100%; height:100%; }

.tbl.type3 table { border-top:1px solid #222; }
.tbl.type3 thead tr th { background-color:#F5F7FA; padding:13px 0; font-size:13px; color:#666; border-bottom:1px solid #ccc; }
.tbl.type3 tbody tr th { background-color:#F5F7FA; padding:13px; font-size:13px; color:#666; border-bottom:1px solid #ccc; text-align:left; }
.tbl.type3 td + td,
.tbl.type3 td.left-line,
.tbl.type3 thead tr th + th { border-left:1px solid #ccc; }
.tbl.type3 td { border-bottom:1px solid #ccc; padding:10px 8px; }

.flex-box > .pager { margin-top:0; }
.pager { margin-top:16px; padding:8px 0; height:24px; display:flex; justify-content:center; align-items:center; }
.pager a[class^='btn_'] { width:12px; height:12px; background-image:url('../images/ico_arrow-gray.svg'); background-repeat:no-repeat; background-position:50% 50%; position:relative; }
.pager a.btn_first,
.pager a.btn_prev { transform:rotate(180deg); }
.pager a.btn_first::before { content:""; width:12px; height:12px; display:block; position:absolute; z-index:0; background-image:url('../images/ico_arrow-gray.svg'); background-repeat:no-repeat; background-position:50% 50%; left:-4px; }
.pager a.btn_last::before { content:""; width:12px; height:12px; display:block; position:absolute; z-index:0; background-image:url('../images/ico_arrow-gray.svg'); background-repeat:no-repeat; background-position:50% 50%; margin-left:4px; }
.pager ul { display:flex; gap:20px; padding:0 13px; }
.pager ul li a { width:20px; height:20px; border-radius:50%; color:#BABABA; display:flex; align-items:center; justify-content:center; }
.pager ul li.on a { background-color:var(--color-active); color:#fff; }

.sec-gap.cc { border-color:#ccc; }

.inp-radio-tgl { position:relative; display:inline-flex; border-radius:4px; overflow:hidden; }
.inp-radio-tgl input[type='radio'] { position:absolute; opacity:0; appearance:none; -webkit-appearance:none; }
.inp-radio-tgl label { min-width:80px; height:32px; line-height:32px; background-color:#F1F1F1; color:#BABABA; display:flex;     justify-content:center; }
.inp-radio-tgl input[type='radio']:checked + label { background-color:var(--color-active); color:#fff; }
.inp-radio-tgl input[type='radio']:checked:disabled + label { background-color:#BBC4D8; color:#fff; }
.inp-radio-tgl input[type='radio']:focus + label { outline:2px solid #222; outline-offset:-2px; }

.per_no_yoil { display:flex; gap:10px; align-items:center; justify-content:center; font-weight:600; color:#bababa; }
.per_no_yoil li.on { color:var(--color-active); }

.tbl-muin .item { width:1280px; }
.tbl-muin td { box-sizing:border-box; }
.tbl-muin td:nth-child(1) { width:72px; }
.tbl-muin td:nth-child(2) { width:94px; }
.tbl-muin td:nth-child(3) { width:452px; }
.tbl-muin td:nth-child(4) { width:384px; }
.tbl-muin td:nth-child(5) { width:184px; }
.tbl-muin td:nth-child(6) { width:94px; }
  
.time-set-wrap .time-set.yoil-circle > li > .inp-ver { width:68px; }
.time-set.yoil-circle .inp-ver input { display:none; }
.time-set.yoil-circle .inp-ver input + label { display:flex; background-color:#F1F1F1; color:#fff; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; }
.time-set.yoil-circle .inp-ver input:checked + label { background-color:var(--color-active); color:#fff; }

.time-set.yoil-circle .inp-ver input:checked + label.sunday { background-color:var(--color-red); }

input.inp-toggle.onoff.qual:checked::before { content:"판매"; }
input.inp-toggle.onoff.qual::before { content:"품절"; }
input.inp-toggle.onoff.expo:checked::before { content:"노출"; }
input.inp-toggle.onoff.expo::before { content:"숨김"; }

.tab-menu.row2 { width:640px; flex-wrap:wrap; }

.bar-left { position:relative; padding-left:7px; }
.bar-left::before { content:""; width:1px; height:12px; position:absolute; background-color:#BABABA; left:0px; top:50%; transform:translateY(-50%); }

.detail-col-2 + .detail-col-2 { margin-top:16px;  border-top:1px solid #ccc; }

.detail-col-2 { display:grid; gap:10px 0; padding-top:16px; grid-template-columns:80px auto; line-height:22px; }
.detail-col-2 dt { color:#666; }
.detail-col-2 dd { color:#222; text-align:right; }

.tx-gray9 { color:#999; }
.tx-inp-list.txt-r { justify-content:flex-end; }

.rdo-grid { display:grid; gap:8px; grid-template-columns:repeat(2, 1fr); }
.radio.button { display:none; }
.radio.button + label { text-align:center; height:34px; line-height:34px; display:block; width:100%; text-align:center; border-radius:8px; background-color:#f1f1f1; color:#bababa; }
.radio.button:checked + label { background-color:var(--color-active); color:#fff; }

/* 스마트 오더 기기 목록 */
.signal-status { display:flex; justify-content:flex-start; align-items:center; gap:6px; }
.signal-status li { display:flex; align-items:center; gap:4px; margin-top:10px; font-size:14px; line-height:18px; color:#666; }
.signal-status *[class^='ico-'] { display:inline-flex; background-repeat:no-repeat; background-size:100%; }
.signal-status *.ico-signal { background-image:url('../images/ico_signal.svg'); width:13px; height:11px; }
.signal-status *[class^='ico-battery'] { width:13px; height:7px; text-indent:-9999px; }
.signal-status *.ico-battery0 { background-image:url(../images/ico_battery0.svg); }
.signal-status *.ico-battery10 { background-image:url(../images/ico_battery10.svg); }
.signal-status *.ico-battery30 { background-image:url(../images/ico_battery30.svg); }
.signal-status *.ico-battery80 { background-image:url(../images/ico_battery80.svg); }
.signal-status *.ico-battery100 { background-image:url(../images/ico_battery100.svg); }
.signal-status .circle { display:inline-flex; border-radius:50%; width:6px; height:6px; }
.signal-status .circle.green { background-color:#7BD03A; }
.signal-status .circle.red { background-color:var(--color-red); }
.signal-status .circle.blue { background-color:var(--color-active); }
.signal-status .circle.gray { background-color:#A5AFC2; }

.cnt-rbox.disabled { color:#EEEEEE; border-color:#eee; }
.cnt-rbox.disabled .title_16, 
.cnt-rbox.disabled .signal-status { opacity:0.4; }

.grid-list { display:grid; gap:16px 24px; }
.grid-list.gap16 { gap:16px; }
.grid-list.col-2 { grid-template-columns:repeat(2, 1fr); }
.grid-list.col-3 { grid-template-columns:repeat(3, 1fr); }

.grid-list.smt-order { gap:16px; }
.grid-list.smt-order .btns.sec-gap { margin-top:16px; padding-top:16px; }
.grid-list.smt-order > .cnt-rbox { padding:18px 20px; }
.grid-list.smt-order .signal-status > li { margin-top:0; }

.inp-count .txa { position:relative; }
.inp-count .txa textarea { line-height:18px; padding:11px; overflow-y:hidden; }
.inp-count .txa .btn-clear { position:absolute; right:8px; top:8px; }

.update-box { display:flex; gap:16px; justify-content:center; align-items:center; }
.update-box div { width:120px; height:120px; border-radius:50%; text-align:center; display:flex; flex-direction:column; justify-content:center; }
.update-box div strong { display:block; width:100%; font-size:16px; height:18px; line-height:18px; margin-top:3px; }
.update-box div.prev { border:1px solid var(--color-active); }
.update-box div.next { background-color:var(--color-active); color:#fff; }

.device-seq { margin-top:20px; }
.device-seq .signal-status { margin-top:8px; }
.device-seq li.item { width:400px; box-sizing:border-box; margin-top:4px; margin-bottom:4px; border-radius:8px; }
.device-seq li.item .btn_drag { position:absolute; right:24px; top:50%; transform:translateY(-50%); }

/* .inp-power { position:relative; display:block; width:60px; height:60px; border:6px solid #E8ECF5; background-color:#8D97AB; border-radius:50%; transition:background-color .2s; cursor:pointer; }
.inp-power::after { content:''; position:absolute; width:24px; height:24px; top:50%; left:50%; margin:-12px 0 0 -12px; background:url(../images/ico_power.svg) no-repeat center center / auto 18px; filter:invert(1); }
.inp-power:checked { background-color:var(--color-active); } */

.power-list { display:flex; }
.power-list li + li { position:relative; margin-left:30px; padding-left:30px; }
.power-list li + li::before { content:''; position:absolute; width:1px; height:30px; top:50%; left:0; margin-top:-15px; background-color:#DAE0ED; }

/* 스마트 냉난방기기 */
.column-wrap.temp-state { gap:40px; }
.column-wrap.temp-state .column + .column { padding:0; border:none; }

.temp-state .column.scroll-box { flex:0; width:300px; flex-basis:300px; max-height:720px; overflow-y:auto; overflow-x:hidden; }

.temp-state .rbox-list.info li { border:none; }
.temp-state .rbox-list.info .in-btn { display:block; text-align:left; padding-right:50px; border:1px solid #eee; border-radius:8px; }
.temp-state .rbox-list.info .in-btn::after { position:absolute; width:20px; height:20px; right:20px; top:50%; margin-top:-10px; }
.temp-state .rbox-list.info li.sel .in-btn { border-color:var(--color-active); }
.temp-state .in-btn .name-tx { display:block; }
.temp-state .column.state { flex:1; }
.temp-set-view { display:flex; align-items:stretch; gap:12px; }
.temp-set-view .temp-set { flex:1.1; padding:20px; border:1px solid #ccc; border-radius:12px; }
.temp-set-view .temp-set > .flex-box { padding:0 30px; }
.temp-set-view .temp-set .temp-time { text-align:center; }
.temp-set-view .temp-set .temp-tx { font-size:20px; line-height:36px; font-weight:600; }
.temp-set-view .temp-set .temp-tx > strong { font-size:24px; font-weight:600; }
.temp-set-view .temp-set .time-tx { padding:4px 16px; border:1px solid #8D97AB; border-radius:20px; font-size:12px; line-height:16px; }
.temp-set-view .temp-set .btn-pm { width:48px; height:48px; border:1px solid var(--color-main); border-radius:8px; }
.temp-set-view .temp-set .btn-pm:disabled { border-color:#f1f1f1; }
.temp-set-view .temp-set .btn-pm::after { width:16px; left:15px; top:22px; background-color:var(--color-main); }
.temp-set-view .temp-set .btn-pm::before { height:16px; top:15px; left:22px; background-color:var(--color-main); }
.temp-set-view .temp-set .btns { margin-top:16px; }
.temp-set-view .temp-status { gap:12px; }
.temp-set-view .temp-status li { display:flex; flex-direction:column; justify-content:center; align-items:center; border-radius:12px; }
.temp-set-view .temp-status .temp,
.temp-set-view .temp-status .hum { margin-left:-5px; color:#666; }
.temp-set-view .temp-status strong { font-size:20px; line-height:36px; }
.temp-set-view .temp-status strong > b { font-size:24px; font-weight:600; }

.dial-wrap.custom > input[type='text'] { display:none; }
.dial-wrap.custom { position:relative; }
.dial-wrap.custom path,
.dial-wrap.custom path.path_guide { stroke-width:8; }
.dial-wrap.custom .rotate-wrap { display:none; }
.dial-wrap.custom .dial-svg { position:relative; }
.dial-wrap .value-tx { position:absolute; text-align:center; font-size:18px; color:var(--color-active); font-weight:700; width:70px; height:28px; line-height:28px; border-radius:14px; border:1px solid #BBC4D8; left:50%; transform:translateX(-50%); top:98px; }
.dial-wrap .value-tx:after { content:"°C"; font-size:11px; line-height:23px; font-weight:500; margin-left:2px; letter-spacing:0; }
.dial-wrap.ondo .value-tx { width:110px; height:42px; line-height:42px; top:115px; border-radius:20px; font-size:24px; }
.dial-wrap.ondo .value-tx:after { font-size:16px; }

.windmode { background-image:url('../images/ico_leaf.svg'); background-repeat:no-repeat; background-position:50% 50%; }

.dial-btns { display:flex; justify-content:space-between; align-items:center; position:relative; margin-top:-92px; }
.dial-btns .btn { width:68px; height:68px; font-size:20px; text-indent:-999px;box-shadow:3px 3px 8px 0px #0000001A; background-image:url('../images/ico_minus.svg'); background-repeat:no-repeat; background-position:50% 50%; overflow:hidden; }
.dial-btns .btn.plus { background-image:url('../images/ico_plus.svg'); }

.store-graph {  position:relative; height:320px; padding:10px 50px; }
.store-graph .chart { width:100%; overflow-x:auto; overflow-y:hidden; }
.apexcharts-marker[r="6"] {  fill:#fff !important; }
.store-graph .yaxis {  position:absolute; width:50px; top:0; left:0; height:100%; padding:0 0 25px; color:#FF7274; box-sizing:border-box; font-size:11px; line-height:1.5em; }
.store-graph .yaxis.right {  left:auto; right:0; color:#7293FF; }
.store-graph .tit { height:22px; text-align:center; white-space:nowrap; margin-bottom:10px; }
.store-graph .yaxis ul { display:flex; height:calc(100% - 45px); flex-direction:column; justify-content:space-between; text-align:center; }

.temp-sensor .signal-status { justify-content:flex-end; }
.temp-sensor .signal-status > li { margin-top:0; }
.temp-sensor .temp-status > li { padding:35px 10px; }

/* 스마트 냉난방 기기 목록 > 타이머 */
.timer-info { border:1px solid #ccc; border-radius:8px; margin-top:24px; padding:24px; }
.timer-info p + p { margin-top:4px; margin-bottom:16px; }
.timer-info.nodata { text-align:center; width:100%; }
.timer-info.nodata p { margin-bottom:8px; }
.timer-info.nodata img { width:16px; filter:brightness(0) saturate(100%) invert(42%) sepia(1%) saturate(2375%) hue-rotate(329deg) brightness(90%) contrast(83%); }
.timer-btn { display:flex; gap:8px; margin-top:24px; padding-bottom:8px; justify-content:end; }
.timer-btn .btn { width:32px; height:32px; background-color:#fff; border:1px solid #BBC4D8; border-radius:50%; text-indent:-999px; overflow:hidden; background-position:50% 50%; background-repeat:no-repeat; }
.timer-btn .btn.delete img { width:12px; filter:brightness(0) saturate(100%) invert(12%) sepia(1%) saturate(1009%) hue-rotate(94deg) brightness(96%) contrast(94%); }
.timer-btn .btn.off { display:none; }
.timer-btn .btn.pause { background-color:#424752; background-image:url('../images/ico_pause2.svg'); background-size:50%; }
.timer-btn .btn.play { background-color:#424752; background-image:url('../images/ico_play2.svg'); background-size:50%; }

.time-set-box { display:flex;  align-items:center; gap:8px; }
.time-set-box p { font-size:28px; line-height:82px; margin-top:26px; }
.time-set-box div { text-align:center; }
.time-set-box div small { font-size:14px; color:#666; padding-bottom:8px; display:block; }
.time-set-box div input { width:177px; height:82px; border-radius:8px; border:1px solid #ccc; text-align:center; font-size:32px; font-weight:600; color:#222; }

.grid-rdo { display:grid; grid-template-columns:repeat(2, 1fr); gap:8px; }
.grid-rdo.no-row { grid-template-columns:repeat(4, 1fr); }
.grid-rdo input[type="radio"] { display:none; }
.grid-rdo input[type="radio"] + label { display:block; font-weight:600; text-align:center; border-radius:8px; width:100%; height:34px; line-height:34px; background-color:#F1F1F1; color:#BABABA; cursor:pointer; }
.grid-rdo input[type="radio"]:checked + label { background-color:var(--color-active); color:#fff; }

.store-tool-group {  position:relative; padding:0 56px; box-sizing:border-box; }
.store-tool-group .btn-slide-ctrl { top:0; left:0; width:46px; height:100%; }
.store-tool-group .btn-slide-ctrl.next { left:auto; right:0; }

/* 스마트 냉난방 기기 목록 > 운영스케쥴 */
.tm-set { margin-top:8px; display:flex; justify-content:space-between; align-items:center; padding:12px 16px; background-color:#F5F7FA; }
.tm-set.inline { width:400px; margin:0 auto; }
.tm-set button { width:40px; height:40px; background-color:#fff; border-radius:4px; }
.tm-set button img { width:15px; }
.tm-set button.minus { border:1px solid #BBC4D8; }
.tm-set button.plus { background-color:var(--color-active); border:1px solid #1D4BBE; }
.tm-set button.plus:hover { background-color:var(--color-active); }
.tm-set button.plus img { filter:brightness(0) saturate(100%) invert(100%) sepia(6%) saturate(641%) hue-rotate(218deg) brightness(106%) contrast(106%); }
.tm-set p { font-size:24px; font-weight:700; color:var(--color-active); }
.tm-set p::after { content:"°C"; font-size:17px; font-weight:500; }

.tm-set.disabled button,
.tm-set.disabled button.plus { background-color:#FFFFFF !important; border:1px solid #BABABA; opacity:0.6; }
.tm-set.disabled button.plus img { filter:brightness(0) saturate(100%) invert(12%) sepia(1%) saturate(1009%) hue-rotate(94deg) brightness(96%) contrast(94%); }
.tm-set.disabled p { color:#666666; }

.time-set-wrap.schd .time-set { margin:0; }
.time-set-wrap.schd .time-set > li { padding:8px 0px; }
.time-set-wrap.schd .time-set.yoil-circle > li > .inp-ver { width:34px; }

.card-oper-list { width:100%; }
.card-oper-list .item { overflow:hidden;padding:20px;border:1px solid #DAE0ED;border-radius:12px; }
.card-oper-list .item + .item { margin-top:20px; }
.card-oper-list .item.disabled { position:relative; }
.card-oper-list .item.disabled::after { content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-color:#F5F7FA;opacity:.7; }
.card-oper-list .oper-hours { display:flex;justify-content:flex-start; align-items:center;flex:1; }
.card-oper-list .oper-hours p,
.card-oper-list .oper-hours label { padding-left:8px; font-size:14px; display:flex; justify-content:flex-start; gap:8px; }
.card-oper-list .oper-hours p { padding-left:0; }
.card-oper-list .detail { border-top:1px solid #F1F1F1;margin-top:12px; }
.card-oper-list .yoil { padding:12px 0; }
.card-oper-list .yoil .tag { width:20px;height:20px; line-height:19px; padding:0; justify-content:center; margin-left:0;font-weight:400;color:#fff;border-radius:100px; }
.card-oper-list .yoil .tag.red { background-color:var(--color-red)}
.card-oper-list .temper { display:flex;align-items:center;gap:4px; }
.card-oper-list .temper .tx { display:flex; align-items:center; font-weight:500;color:#666; }

.grid-wrap.card-oper-list .item + .item { margin-top:4px; }
.grid-wrap.card-oper-list .item { width:100%; box-sizing:border-box; margin:4px 0; display:flex; align-items:center; justify-content:space-between; }
.grid-wrap.card-oper-list .item .item-wrap { width:296px; }
.grid-wrap.card-oper-list .item > .btn_drag { flex-shrink:0; padding-left:40px; }

.list-near button { width:24px; height:24px; display:flex; align-items:center; justify-content:center; }
.list-near button img { filter:brightness(0) saturate(100%) invert(12%) sepia(1%) saturate(1009%) hue-rotate(94deg) brightness(96%) contrast(94%); }
.btn-more { min-width:24px; height:24px; display:flex; align-items:center; justify-content:center; }
.btn-more img { transform:rotate(90deg); width:14px; filter:brightness(0) saturate(100%) invert(12%) sepia(1%) saturate(1009%) hue-rotate(94deg) brightness(96%) contrast(94%); }

#layer_ondo-graph .layer-cnt { width:1280px; }

/* 냉난방기 - 설정 */
#layer_temp-set .tab-cnt { height:calc(100vh - 245px); max-height:670px; min-height:250px; }
#layer_temp-set .column-wrap { height:100%; }

.temp-timer { display:none; text-align:center; }
.temp-timer.show { display:flex; }
.temp-timer.cnt-rbox.show { display:block; }
.temp-timer:not(.cnt-rbox) { flex-direction:column; justify-content:space-between; height:100%; }
.temp-timer.cnt-rbox,
.temp-timer .cnt-rbox:not(.gray) { padding:40px; border:1px solid #BABABA; border-radius:12px; }
.temp-timer *[class*="title_"] { margin-bottom:16px; font-weight:500; }
.temp-timer .ico { display:inline-block; line-height:0; vertical-align:text-bottom; }
.temp-timer .ico.blk { filter:brightness(0); }
.temp-timer.step2 .flex-box > * { flex:1; }
.temp-timer.step2 .inp-set { margin:0; }
.temp-timer.step2 .n-select { width:100%; }
.temp-timer.step2 .tx-desc { margin-top:16px; text-align:left; }
.temp-timer.step3 .time-count { font-size:20px; line-height:32px; color:var(--color-active); font-weight:600; }
.temp-timer.step3 .title_18 .ico { vertical-align:8px; }

.rbox-list.schd li { position:relative; display:block; }
.rbox-list.schd li .yoil { height:20px; padding:10px 50px 0 0; margin-top:10px; font-size:14px; line-height:20px; color:#666; border-top:1px solid #F1F1F1; }
.rbox-list.schd li .tags { margin-top:10px; padding-top:10px; border-top:1px solid #F1F1F1; }
.rbox-list.schd li .tags .tag + .tag { margin-left:3px; }
.rbox-list.schd li .btn-blank { position:absolute; width:100%; height:100%; top:0; left:0; text-indent:-9999px; opacity:0; }
.rbox-list.schd li:has(.btn-blank:focus) { outline:2px solid #222; outline-offset:-1px; }
.rbox-list.schd li .inp-toggle { position:absolute; bottom:19px; right:20px; z-index:1; }
.rbox-list.schd li .btn-close { position:absolute; width:20px; height:20px; top:17px; right:18px; background-size:20px auto; z-index:1; }

.temp-schd .schd-list { flex:0; flex-basis:300px; }
.temp-schd .scroll-box { margin-top:20px; }
.temp-schd .time-set-wrap .time-set > li > .inp-ver { width:80px; }
.temp-schd .time-set-wrap .time-set-title { padding-left:106px; }
.temp-schd .time-set-wrap .no-data-box { margin-bottom:70px; }

.temp-alert { display:flex; flex-direction:column; justify-content:space-between; height:100%; }
.slider-wrapper.cnt-rbox { padding:40px; }
.slider-wrapper + .slider-wrapper { margin-top:20px; }
.slider-wrapper .temp-tit { display:flex; gap:4px; }
.double-range { position:relative; height:30px; margin:16px 16px 0; box-sizing:border-box; }
.double-range input { position:absolute; width:100%; height:10px; top:10px; left:0; pointer-events:none; appearance:none; opacity:0; cursor:ew-resize; z-index:11; }
.double-range input::-webkit-slider-thumb { pointer-events:all; width:22px; height:22px; border:none; background-color:transparent; appearance:none; z-index:11; }
.double-range .range-slider { position:relative; width:100%; height:100%; }
.range-slider .track { position:absolute; top:10px; left:-10px; width: calc(100% + 20px); height:12px; background-color:#DAE0ED; border-radius:5px; }
.range-slider .range { position:absolute; top:10px; left:0; right:0; bottom:8px; background: linear-gradient(to right, var(--color-active) 0%, #FF7777 100%) no-repeat; border-radius:5px; z-index:2; }
.range-slider .thumb { position:absolute; width:24px; height:24px; top:4px; border-radius:15px; border:2px solid #FF6565; background:#fff url('../images/ico_controlbar.svg') no-repeat center center; box-sizing:border-box; z-index:10; }
.range-slider .thumb .tx { position:absolute; display:none; bottom:110%; left:50%; transform:translateX(-50%); }
.range-slider .thumb.left { left:0; transform:translateX(-12px); border-color:var(--color-active); }
.range-slider .thumb.right { right:0; transform:translateX(12px); }
.range-slider .thumb.focus { border-width:3px; }
.double-range.humid-range .range-slider .thumb {border-color: var(--color-active);}
.double-range.humid-range .range-slider .range {background: linear-gradient(to right, #416EEC 0%, #9277FF 100%) no-repeat;}
.slider-value { display:inline-block; padding:3px 6px; font-size:14px; font-weight:500; border-radius:2px; background-color:#F5F7FA;}
.inp-range-bar .step-info { margin-top:12px; padding:0 10px; }
.inp-range-bar .step-info ul { display:flex; justify-content:space-between; font-size:14px; color:#666; }

/* 영상/기기관리 */
.tool-box { position:relative; padding:20px 24px; border:1px solid #CCC; border-radius:12px; box-sizing:border-box; }
.tool-box.gray { padding:24px 16px; border:none; background-color:#F5F7FA; }
.tool-box .tit-box { display:flex; justify-content:space-between; align-items:center; }
.tool-box .tit-box:has(.bln-wrap) { position:relative; z-index:10; }
.tool-box .name { font-size:16px; line-height:24px; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tool-box .name .btn-icon { vertical-align:top; }
.tool-box .side-btn { display:flex; gap:6px; }
.tool-box .ctrl-box { display:flex; justify-content:space-between; align-items:center; min-height:40px; margin-top:12px; padding-top:12px; border-top:1px solid #eee; }
.tool-box .ctrl-box.swiper-tool { min-height:183px; }
.tool-box .tx-state { color:#666; }
.tool-box .ctrl-box .ctrl-list { flex:1; display:flex; justify-content:flex-end; align-items:center; gap:12px; }
.tool-box .ctrl-box .ctrl-list.in-flex { display:block; }
.tool-box .ctrl-box .ctrl-list.in-flex > li { display:flex; justify-content:space-between; align-items:center; }
.tool-box .ctrl-box .ctrl-list.in-flex > li + li { margin-top:12px; }
.tool-box .bln-wrap .bln { padding-top:30px; z-index:10; }
.tool-box .bln-wrap .bln > ul.btns { flex-direction:column; margin:0; }
.tool-box .signal-status { flex-shrink:0; }
.tool-box .signal-status > li { margin:0; }
.temp-status { flex:1; display:flex; justify-content:space-between; align-items:stretch; gap:24px; }
.temp-status > li { flex:1; padding:10px; background-color:#F5F7FA; border-radius:8px; text-align:center; line-height:20px; }
.temp-status.off > li > * { opacity:.5; }
.temp-status .temp,
.temp-status .hum { display:inline-block; padding-left:25px; background:url(../images/ico_thermo.svg) no-repeat left 50%; }
.temp-status .hum { background-image:url(../images/ico_humid.svg); }

.light-state { display:flex; justify-content:space-around; align-items:center; padding:30px 20px; border:1px solid #eee; background-color:#fff; border-radius:8px; }
.tit-box + .light-state { margin-top:21px; }

.tool-box .open-tags { display:flex; flex:1; justify-content:flex-end; }
.tool-box .open-tags .tag { padding:3px 15px 1px; }

.tool-box .loading { position:absolute; width:100%; height:100%; top:0; left:0; border-radius:10px; background-color:rgba(0, 0, 0, 0.1); }
.tool-box .loading::before { content:''; position:absolute; width:40px; height:40px; top:50%; left:50%; margin:-20px 0 0 -20px; background:url(../images/ico_loading.svg) no-repeat center center / 24px 24px; animation:tool-loading 0.8s infinite linear;}

@keyframes tool-loading {
  0% { transform:rotate(0deg); }
  100% { transform:rotate(360deg); }
}

.ctrl-box.swiper-tool.temp { padding-top:26px; }
.ctrl-box.temp .temp-status { gap:8px; }
.ctrl-box.temp .temp-status > li { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:4px; padding:20px; border:1px solid #DAE0ED; border-radius:8px; background-color:#fff; }
.ctrl-box.temp .temp-status strong { margin-left:3px; font-size:16px; line-height:20px; }
.ctrl-box.temp .temp-status .temp,
.ctrl-box.temp .temp-status .hum { padding-left:16px; font-size:11px; background-size:16px auto; }

.tool-box.disabled::after { content:''; position:absolute; width:100%; height:100%; top:0; right:0; background-color:rgba(0, 0, 0, 0.1); border-radius:10px; z-index:10; }
.tool-box.disabled .inp-toggle { z-index:11; }

.tool-box.swiper-slide { border-radius:8px; }
.tool-box.swiper-slide .ctrl-box { margin-top:16px; padding-top:16px; }
.ctrl-box.swiper-tool { position:relative; display:block; padding:16px 30px 53px; }
.ctrl-box.swiper-tool .btn-slide-ctrl { position:absolute; height:calc(100% - 56px); top:16px; left:0; }
.ctrl-box.swiper-tool .btn-slide-ctrl.next { left:auto; right:0; }
.ctrl-box.swiper-tool + .btns { margin-top:18px; }
.ctrl-box.swiper-tool .swiper-pagination-bullets-dynamic { position:absolute; padding-top:27px; left:50%; transform:translate3d(-50%,0,0); }
.swiper-tool .swiper-button-disabled { opacity:.3 !important; }

.tool-list { display:flex; justify-content:space-between; align-items:stretch; flex-wrap:wrap; gap:16px; }
.tool-list > * { flex:1; flex-basis:calc(33.33% - 12px); }

.rec-list { position:relative; width:1296px; margin:0 -8px; }
.rec-list > * { position:absolute; width:632px; margin:8px; }

/* 스마트 조명 */
.inp-light_set { display:flex; gap:45px; }
.inp-light_set li {  justify-content:center; display:flex; align-items:center; }
.inp-light_set input[name="all_lights"] + label { display:flex; align-items:center; gap:24px; }
.inp-light_set input[name="all_lights"] + label span { width:60px; height:60px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; }
.inp-light_set input[name="all_lights"] + label span img { width:24px; filter:brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(277deg) brightness(106%) contrast(104%); }
.inp-light_set input.all_lights_on + label span { background-color:var(--color-active); }
.inp-light_set input.all_lights_off + label span { background-color:var(--color-gray); }
.inp-light_set input.all_lights_on:disabled + label,
.inp-light_set input.all_lights_off:disabled + label { color:#ccc; }
.inp-light_set input.all_lights_on:disabled + label span,
.inp-light_set input.all_lights_off:disabled + label span { background-color:#CCCCCC; }

.smart-light > ul { display:grid; grid-template-columns:repeat(6, 1fr); gap:16px; }
.smart-light > ul > li { border-radius:8px; background-color:#F5F7FA; padding:24px; }
.smart-light .tx-name { font-size:var(--size-16); font-weight:600; display:flex; align-items:center; }
.smart-light .tx-name button { width:20px; }
.smart-light .tx-name button img { filter:brightness(0) saturate(100%) invert(5%) sepia(10%) saturate(127%) hue-rotate(316deg) brightness(96%) contrast(81%); margin-left:4px; }
.smart-light .chk-light { display:flex; gap:16px; justify-content:flex-end; margin-top:16px; }
.smart-light .chk-light span { display:flex; }
.smart-light .chk-light .btn_power { width:40px; height:40px; border-radius:50%;  background-color:#DAE0ED; text-indent:-999px; overflow:hidden; background-image:url('../images/ico_lightbulb.svg'); background-repeat:no-repeat; background-position:50% 50%; }
.smart-light .chk-light input:checked + .btn_power { background-color:#FFAE00; }

/* 스마트 허브 */
#hub-list { width:100%; }
.hub-item + .hub-item { margin-top:24px; }
.hub-item .content-wrap { display:none; }
.hub-item .content-wrap .grid-list > li.disabled { opacity:.2; }
.hub-item .btn-tr-tgl {  width:24px; height:24px; overflow:hidden; background-size:7px; background-image:url('../images/ico_arrow-btn.svg'); background-position:50% 50%; background-repeat:no-repeat; transform:rotate(90deg); text-indent:-999px; }
.hub-item .btn-tr-tgl.open {  transform:rotate(-90deg); }
.hub-item .ver-top-line { border-top:1px solid #BABABA; margin-top:16px; padding-top:16px; margin-bottom:16px; }

.doorbell-box { display:grid; grid-template-columns:540px 316px; gap:24px; }
.doorbell-box img.w16 { width:16px; }
.doorbell-box img.wh { filter:brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(23%) hue-rotate(339deg) brightness(106%) contrast(105%); }
.doorbell-box .mv-inner { background-color:#000; display:flex; align-items:center; justify-content:center; }
.doorbell-box .mv-inner .mv > div { position:relative; }
.doorbell-box .mv-inner .mv span { display:flex; gap:4px; align-items:center; color:#fff; border-radius:6px; position:absolute; padding:0 8px; line-height:34px; height:34px; background-color:rgba(0,0,0,0.5); }
.doorbell-box .mv-inner .mv span i { display:flex; align-items:center; }
.doorbell-box .mv-inner .mv span.call {  right:16px; top:16px; }
.doorbell-box .mv-inner .mv span.onoff {  right:16px; bottom:16px; }
.doorbell-box .mv-inner .mv span.record { top:16px; left:50%; transform:translateX(-50%); line-height:36px; height:36px; padding-left:20px; }
.doorbell-box .mv-inner .mv span.record::before { content:""; display:block; border-radius:50%; width:6px; height:6px; background-color:var(--color-red); position:absolute; top:50%; left:8px; transform:translateY(-50%); }
.doorbell-box .mv-inner .call-time { color:#fff; text-align:center; font-size:14px; margin-top:10px; }
.doorbell-box .dropdown-inner > ul > li + li { margin-top:16px; }
.doorbell-box .dropdown-inner > ul > li > input[type=radio] { display:none; }
.doorbell-box .dropdown-inner > ul > li > input[type=radio] + label { border:1px solid #ccc; border-radius:8px; display:block; padding:16px 24px 0; }
.doorbell-box .dropdown-inner > ul > li > input[type=radio]:checked + label { border-color:var(--color-active); }
.doorbell-box .dropdown-inner > ul > li > input[type=radio] + label > .flex-box { margin-bottom:16px; }
.doorbell-box .dropdown-inner ul li .btn-wrap { height:40px; border-top:1px solid #ccc; margin:0 -24px; display:flex; justify-content:flex-end; align-items:center; padding-right:8px; }
.doorbell-box .dropdown-inner ul li .content-wrap { padding:0 0 16px; }
.doorbell-box .dropdown-inner ul li .ico { flex-shrink:0; width:46px; height:46px; border-radius:50%; display:flex; align-items:center; justify-content:center; background-color:var(--color-active); }

.info-tooltip { display:inline-flex; gap:4px; align-items:center; justify-content:start; position:relative; }
.info-tooltip button.tooltip { width:20px; height:20px; text-indent:-999px; overflow:hidden; background-image:url('../images/ico_tooltip.png'); background-position:50% 50%; background-repeat:no-repeat; }
.info-tooltip .tip-box {  position:absolute; word-break:keep-all; background-color:var(--color-active); color:#fff; border-radius:8px; padding:12px; } 
.info-tooltip .tip-box:after { content:""; width:0; height:0; border-style:solid; border-width:8px 6px 0 6px; border-color:var(--color-active) transparent transparent transparent; position:absolute; bottom:-6px; right:10px; }
.info-tooltip .tip-box.right { right:-5px; bottom:34px; }
.info-tooltip .tip-box.left { left:-5px; bottom:34px; }

.info-tooltip .tip-box .close { position:absolute; top:10px; right:10px; }
.info-tooltip .tip-box .close img { filter:brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(23%) hue-rotate(339deg) brightness(106%) contrast(105%); }

.prd-rank .column h3 { display:flex; line-height:30px; height:30px; align-items:center; justify-content:center; gap:6px; }
.prd-rank .column h3 i { display:block; width:20px; height:18px; background-image:url('../images/ico_best.svg'); background-repeat:no-repeat; }
.prd-rank .column:last-child h3 i { transform:rotate(180deg); }
.prd-rank > ul { width:100%; }
.prd-rank > ul > li + li,
.prd-rank .column > ul > li + li { margin-top:8px; }
.prd-rank > ul > li,
.prd-rank .column > ul > li { font-size:14px; background-color:#fff; border-radius:8px; display:flex; padding:20px; align-items:center; justify-content:space-between; }
.prd-rank > ul > li ul li,
.prd-rank .column > ul > li ul li { font-size:13px; }
.prd-rank > ul > li:first-child strong
.prd-rank .column > ul > li:first-child strong { color:var(--color-active); }
.prd-rank .rank-num { min-width:70px; margin-right:16px; }
.prd-rank .prd-name { flex:1; text-align:left; margin-right:16px; }

.money-box { display:inline-flex; align-items:center; }
.money-box span.up img { transform:rotate(180deg); filter:brightness(0) saturate(100%) invert(25%) sepia(78%) saturate(6824%) hue-rotate(354deg) brightness(107%) contrast(125%); }
.coin-large { display:inline-flex; align-items:center; color:var(--color-active); font-size:24px; font-weight:700; }
.coin-large i { width:34px; height:32px; background-image:url('../images/ico_coin.svg'); background-repeat:no-repeat; }
.coin-large span { font-size:20px; font-weight:500; }
.price-info .coin-large { margin-bottom:4px; }

.graph-wrap { position:relative; } 
.flex-box .legend.type-sale {  flex:1; }
.legend.type-sale ul {  display:flex; flex-direction:column; align-items:stretch; width:auto; text-align:left; }
.legend.type-sale ul li {  display:flex; position:relative; justify-content:center; align-items:center; color:#565D6B; }
.legend.type-sale ul li .tx-legend  { flex-shrink:0; width:80px; }
.legend.type-sale ul li + li { padding-top:8px; }
.legend.type-sale .mark {  display:block; width:6px; height:6px; border-radius:50%; margin-right:5px; }
.legend.type-sale .tx-value {  flex:1; display:flex; justify-content:flex-end; text-align:right; color:#222; font-size:16px; }
.legend.type-sale .tx-value > i { min-width:70px; margin-left:5px; font-style:normal; color:#666; font-size:14px; }

.legend.type-sale ul li:nth-child(1) .mark { background-color:#45AD6C !important; }
.legend.type-sale ul li:nth-child(2) .mark { background-color:var(--color-active) !important; }
.legend.type-sale ul li:nth-child(3) .mark { background-color:#C267F6 !important; }

.ondo-circle { display:flex; justify-content:flex-end; gap:12px; color:#666; }
.ondo-circle li { display:flex; align-items:center; }
.ondo-circle span { display:inline-flex; width:6px; height:6px; border-radius:50%; background-color:var(--color-red); margin-right:6px; }
.ondo-circle span.blue { background-color:var(--color-active); }

.top-summary { display:flex; justify-content:flex-start; align-items:center; gap:0; line-height:30px; }
.top-summary strong { display:inline-flex; align-items:center; font-size:24px; color:var(--color-active); }
.top-summary strong span { font-size:20px; font-weight:500; }
.top-summary > span { width:90px; font-size:18px; }
.top-summary > span.bar-left { padding-left:32px; margin-left:32px; }

.sales-grid { display:grid; gap:40px; grid-template-columns:540px auto; }
.sales-grid > * { min-width:0; }
.sales-summary { padding:8px 8px 0; } 
.sales-summary .cal { display:flex; border-bottom:1px solid #eee; height:24px; padding:0 0 24px; justify-content:flex-start; align-items:center; gap:8px; font-size:16px; font-weight:500; }

.sales-summary .mn .bar-left { font-size:16px; margin-left:12px; padding-left:12px; }
.sales-summary .mn .bar-left::before { height:16px; left:0; }
.sales-summary .mn ul { width:100%; }
.sales-summary .mn ul li { display:flex; justify-content:space-between; line-height:18px; font-size:14px; }
.sales-summary .mn ul li span { color:var(--color-main); }
.sales-summary .mn ul li p { font-weight:600; }
.sales-summary .mn ul li + li { margin-top:12px; }
.sales-summary .mn ul + ul { border-top:1px solid #ccc; margin-top:16px; padding-top:16px; }

/* 근태관리 */
.yoil-tx { font-size:14px; line-height:18px; color:#666; letter-spacing:4px; }

.column-wrap.chk { gap:32px; }
.column-wrap.chk * + .cnt-rbox { margin-top:13px; }
.column-wrap.chk .column.c-worker { width:415px; flex-shrink:0; flex-grow:inherit; flex-basis:auto; }
.column-wrap.chk .column.c-worker .tbl tbody td strong { font-weight:600; }
.column-wrap.chk .column.c-worker .cnt-rbox:has(.swiper-worker) { padding:24px 40px; }
.tbl tbody td strong.name { text-overflow:ellipsis; overflow:hidden; word-break:break-word; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; text-align:center; }
.column-wrap.chk .column.c-chk { width:800px; flex-shrink:0; padding-left:32px; }
.column-wrap.chk .column.c-chk ul.tab-menu { justify-content:flex-start; gap:24px; } 
.column-wrap.chk .column.c-chk ul.tab-menu li a {  display:flex; color:#999; font-weight:500; overflow:hidden; gap:8px; align-items:center; } 
.column-wrap.chk .column.c-chk ul.tab-menu li a img { height:1.1rem; }
.column-wrap.chk .column.c-chk ul.tab-menu li.on a { color:var(--color-main); font-weight:500; }
.column-wrap.chk .column.c-chk ul.tab-menu li.on a img { filter:brightness(0) saturate(100%) invert(17%) sepia(29%) saturate(3242%) hue-rotate(196deg) brightness(89%) contrast(90%); }
.column-wrap.chk .column.c-chk .cal-wrap { width:100%; }
.worker-box { margin-bottom:20px;; }
.worker-box ul { display:flex; }
.worker-box ul li { width:50%; gap:8px; display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:500; }
.worker-box ul li strong { font-size:24px; color:var(--color-active); }
.worker-box ul li:last-child strong { color:#6B7486; }

.swiper-worker { position:relative; }
.swiper-worker .btn-slide-ctrl { position:absolute; top:47%; }
.swiper-worker .btn-slide-ctrl.prev { left:-28px; }
.swiper-worker .btn-slide-ctrl.next { right:-28px; }
.swiper-worker .slide-pos { display:flex; justify-content:center; gap:6px; margin:0 auto; padding:16px 0 0; }
.swiper-worker .swiper-pagination-bullets-dynamic { position:relative; padding-top:16px; left:50%; transform:translate3d(-50%,0,0); }

/* 근태관리 달력 */
.tna-cal > input[type='text'] { display:none; }
.tna-cal .cal-cnt .cal-top {  width:164px; height:46px; line-height:46px; margin:0 auto 20px; }
.tna-cal .cal-cnt .cal-top.disabled { opacity:0.4}
.tna-cal .cal-cnt .cal-top:has(.month) .cal-now-tx.year::after { content:"."; }
.tna-cal .cal-stics { z-index:2; position:absolute; left:24px; top:37px; }
.tna-cal .cal-indicator { z-index:2; position:absolute; right:24px; top:24px; line-height:46px; display:flex; gap:16px; }
.tna-cal .cal-indicator span { padding-left:12px; position:relative; }
.tna-cal .cal-indicator span::before { content:""; left:0; position:absolute; border-radius:50%; display:block; margin-top:19px; margin-right:6px; width:8px; height:8px; background-color:var(--color-active); }
.tna-cal .cal-indicator span:nth-child(2):before { background-color:#A5AFC2; }
.tna-cal .cal-indicator span:nth-child(3):before { background-color:#45AD6C; }
.tna-cal .cal-top  .cal-now-tx { font-size:20px; }
.tna-cal .cal-yoil  { border-bottom:1px solid #eee; height:44px; line-height:44px; padding-bottom:8px; }
.tna-cal .cal-area td { border-bottom:1px solid #eee; }
.tna-cal .cal-area td button {  display:flex; flex-direction:column; justify-content:flex-start; align-items:center; gap:3px; width:100%; height:98px; padding:10px 0 0px; line-height:40px; border-radius:5px; vertical-align:top; }
.tna-cal .cal-area td button > span {  display:flex; align-items:center; gap:3px; }
.tna-cal .cal-area td button.select-day { color:#212121 !important; background-color:#fff !important; font-weight:500; }
.tna-cal .cal-area td button.select-day.today { color:var(--color-active) !important; }
.tna-cal .cal-area td {  padding:0; vertical-align:top; }
.tna-cal .cal-area td .count {  display:inline-block; min-width:9px; padding:0 5px; font-size:11px; line-height:1.5454em; color:#fff; background-color:var(--color-active); border-radius:1rem; font-style:normal; white-space:nowrap; }
.tna-cal .cal-area td .count.out {  background-color:#A5AFC2; }
.tna-cal .cal-area td .count.memo {  background-color:#45AD6C; }
    /* 도트형 */
.tna-cal.dot .cal-area td button {  height:46px; }
.tna-cal.dot .cal-area td button > span {  flex-direction:row; }
.tna-cal.dot .cal-area td .count {  width:8px; min-width:8px; height:8px; padding:0; text-indent:-9999px; }

.cal-list { width:100%; }
.cal-list li { position:relative; border-radius:8px; gap:20px; background-color:#fff; line-height:24px; height:24px; padding:16px 24px; display:flex; align-items:center; }
.cal-list li + li { margin-top:8px; }
.cal-list li .btn-blank { position:absolute; width:100%; height:100%; top:0; left:0; text-indent:-9999px; }

.cal-list li .date { width:106px; margin-right:20px; flex-shrink:0; display:flex; justify-content:space-between; align-items:center; }
.cal-list li .date strong { font-size:18px; width:40px; }
.cal-list li .date span { font-size:16px; color:#666; }
.cal-list li .date.blue strong,
.cal-list li .date.blue span { color:var(--color-active); }
.cal-list li .date.red strong,
.cal-list li .date.red span { color:var(--color-red); }
.cal-list li .ico-btn { display:block; line-height:0; }

.cal-list li dl { flex:1; display:flex; font-size:14px; color:#666; gap:4px; }
.cal-list li dl dt { padding-left:24px; position:relative; display:flex; align-items:center; }
.cal-list li dl dt::before { content:""; left:5px; top:50%; transform:translateY(-50%); position:absolute; display:block; width:10px; height:10px; border-radius:50%;  background-color:var(--color-active); }
.cal-list li dl dt.gray::before { background-color:#A5AFC2; }
.cal-list li dl dt.memo::before { display:none; }
.cal-list li dl dt.memo { padding-left:0px; }
.cal-list li dl dt.memo span.ico-btn { width:24px; height:24px; display:flex; align-items:center; justify-content:center; }
.cal-list li dl dd { margin-right:16px; }
.cal-list li dl dd:last-child { margin-right:0; }
.cal-list li dl dd span { font-size:13px; margin-left:4px; }

:root {  
	--chip-bk :#666666;
	--chip-purple :#C19AF8;
	--chip-red :#E16872;
	--chip-green :#99D27D;
	--chip-blue :#81A5E4;
	--chip-yellow :#FCD441;
	--chip-orange :#FFA564;
	--chip-pink :#F7ACE2;
}
.w-circle { display:inline-block; width:16px; height:16px; border-radius:50%; }
.w-circle.bk { background-color:var(--chip-bk); }
.w-circle.red { background-color:var(--chip-red); }
.w-circle.purple { background-color:var(--chip-purple); }
.w-circle.green { background-color:var(--chip-green); }
.w-circle.blue { background-color:var(--chip-blue); }
.w-circle.yellow { background-color:var(--chip-yellow); }
.w-circle.orange { background-color:var(--chip-orange); }
.w-circle.pink { background-color:var(--chip-pink); }

.update_sec { display:flex; justify-content:flex-end; align-items:center; gap:0 18px; margin:24px 0; }

.wrk-month-list .cal-wrap { margin:0 auto; }
.wrk-month-list .cnt-rbox.line-cc > .title_16 { margin-bottom:20px; gap:4px; }
.wrk-month-list .cnt-rbox.line-cc { padding:16px; margin-bottom:24px; }
.wrk-month-list .cnt-rbox.line-cc .cnt-rbox.gray { padding:8px; }
.wrk-month-list .cnt-rbox.list { padding:16px; border-radius:8px; }
.wrk-month-list .cal-list li { justify-content:space-between; padding:8px 48px 8px 12px; border-radius:4px; }
.wrk-month-list .cal-list li + li { margin-top:4px; }
.wrk-month-list .cal-list li:has(.ico-btn) { padding-right:12px; }
.wrk-month-list .cal-list .date { width:60px; font-size:14px; line-height:18px; }
.wrk-month-list .cal-list .date > strong { font-size:14px; line-height:18px; }
.wrk-month-list .cal-list dl { flex:1; }
.wrk-month-list .cal-list dt { padding-left:0; }
.wrk-month-list .cal-list dt::before { display:none; }

.wrk-grid { display:grid; grid-template-columns:280px 467px; gap:32px; }
.wrk-grid dt { line-height:40px; }
.wrk-grid .btn-select { display:flex; align-items:center; gap:4px; }
.wrk-grid .n-select .select-list li .btn-sel { display:flex; align-items:center; gap:4px; color:#666; font-size:13px; }

.tbl.type1.wrk td { padding:9px; text-align:center; }
.tbl.type1.wrk td .yoil-tx { margin-bottom:8px; }

.color__inp-set { display:flex; justify-content:space-between; margin-top:16px; }
.color__inp-set li { text-align:center; position:relative; }
.color__inp-set li label { display:block; font-size:var(--size-13); line-height:18px; margin-top:6px; }
.color__inp-set li input[type='radio']::before { content:""; width:24px; height:24px; border-radius:50%; display:block; background-color:#666; }
.color__inp-set li input[type='radio']:checked::after { content:""; width:30px; height:30px; border-radius:50%; display:block; border:1px solid #424752; position:absolute; top:-4px; left:50%; transform:translateX(-50%); }
.color__inp-set li input[type='radio'].c1::before { background-color:var(--chip-bk); }
.color__inp-set li input[type='radio'].c2::before { background-color:var(--chip-purple); }
.color__inp-set li input[type='radio'].c3::before { background-color:var(--chip-red); }
.color__inp-set li input[type='radio'].c4::before { background-color:var(--chip-blue); }
.color__inp-set li input[type='radio'].c5::before { background-color:var(--chip-orange); }
.color__inp-set li input[type='radio'].c6::before { background-color:var(--chip-yellow); }
.color__inp-set li input[type='radio'].c7::before { background-color:var(--chip-green); }
.color__inp-set li input[type='radio'].c8::before { background-color:var(--chip-pink); }

.cnt-more { position:relative; }
.cnt-more .inner { right:0; display:none; z-index:2; padding:10px; position:absolute; border-radius:8px; background-color:#fff; border:1px solid #BABABA; }
.cnt-more .inner.on { display:block; }
.cnt-more .inner ul { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.cnt-more .inner ul li + li { margin-top:4px; }
.cnt-more .inner ul li { font-size:13px; }

.chart.top-line,
.nChart-wrap.top-line { padding-top:40px; border-top:2px solid #222; }
.nChart-wrap.top-line .legend button { display:block; text-indent:-9999px; overflow:hidden; }
.nChart-wrap.no-left .chart { padding-left:0; }
.nChart-wrap.no-left .chart .guide-line { margin-left:0; }
.nChart-wrap.no-left .chart .guide-line li { width:100%; }
.nChart-wrap.no-left .chart .guide-line li::after { left:0; }
.nChart-wrap.no-left .chart .guide-line li .guide-tx,
.nChart-wrap.no-left .chart .guide-line::after { display:none; }

.edit-time { line-height:28px; }
.edit-time .now,
.edit-time.mod .modify { position:relative; display:inline-flex; align-items:center; gap:4px; padding-left:5px; vertical-align:middle; }
.edit-time .now::before,
.edit-time.mod .modify::before { content:''; position:absolute; width:1px; height:12px; top:50%; left:0; margin-top:-6px; background-color:#aaa; }
.edit-time.mod .now,
.edit-time .modify { display:none; }
.edit-time .modify input { font-size:14px; font-weight:500; }
.edit-time .modify .mod-btns { display:flex; gap:4px; }
.edit-time .modify .mod-btns .btn { flex-shrink:0; padding:5px 8px; }

#layer_chk-list .tx-inp-list { position:sticky; top:0; margin-bottom:24px; background-color:#fff; }

#layer_chk-detail .tbl td { word-break:break-all; }

#layer_schd-default .layer-mid { position:relative; }
#layer_schd-default .flex-box.f-top { position:sticky; top:0; margin-bottom:16px; background-color:#fff; z-index:101; }
#layer_schd-default .flex-box .tab-menu { margin-bottom:0; }

/* 매출관리 */
.store-sales + .inner .tab-menu.type2 { margin-bottom:24px; }

.swiper-sales { position:relative; }
.swiper-sales .btn-slide-ctrl { position:absolute; top:47%; }
.swiper-sales .btn-slide-ctrl.prev { left:-30px; }
.swiper-sales .btn-slide-ctrl.next { right:-30px; }
.swiper-sales .swiper-pagination-bullets-dynamic { position:relative; left:50%; padding-top:10px; transform:translate3d(-50%,0,0); }

.cont-sel_sec + * { margin-top:24px !important; }

.slide-wrap.date-slide { margin-bottom:24px; }

.sale-total_sec { margin-top:64px; }
.sale-total_sec .cnt-rbox { display:flex; justify-content:space-between; align-items:stretch; padding:24px 60px; gap:30px; }
.sale-total_sec .today-info { padding:24px 48px; }
.sale-total_sec .today-info .date { display:flex; align-items:center; gap:4px; font-weight:600; }
.sale-total_sec .today-info .name { font-size:18px; line-height:24px; font-weight:600; }
.sale-total_sec .chart { flex:1; }
.sale-total_sec .chart .apexcharts-canvas { margin:0 auto; }
.sale-total_sec .today-price { flex:1.4; display:flex; flex-direction:column; justify-content:space-between; }
.sale-total_sec .today-price > .flex-box { padding:20px 24px; align-items:flex-start; }
.sale-total_sec .today-price .money-box { display:flex; justify-content:flex-end; }
.sale-total_sec .legend.type-sale { padding:24px; background-color:#F5F7FA; border-radius:4px; }
.sale-total_sec .legend.type-sale .tx-legend { font-weight:500; }

.sales-sum-top { text-align:center; font-size:16px; line-height:24px; font-weight:500; color:#222;}
.sales-sum-top .cnt-rbox.line-cc { border-radius:16px; }
.sales-sum-top .title_16 { display:flex; align-items:center; gap:4px; }
.sales-sum-top .title_16 + * { margin-top:8px; }
.sales-sum-top .price { display:flex; line-height:30px; align-items:center; justify-content:center; gap:6px; }
.sales-sum-top .price strong { font-size:24px; line-height:30px; font-weight:700; color:var(--color-active); }
.sales-sum-top .price strong + span { margin-left:-4px; }
.sales-sum-top .price span { font-size:16px; line-height:30px; color:var(--color-active); }
.sales-sum-top .price .slash { font-size:18px; }
.sales-sum-top .info { display:flex; gap:12px; margin-top:24px; }
.sales-sum-top .info li { display:flex; justify-content:space-between; background-color:#F5F7FA; padding:16px; border-radius:4px; flex-grow:1; }
.sales-sum-top .info li strong { font-weight:600; }

.sales-wrap { border-radius:16px; background-color:#F5F7FA; padding:24px; }
.sales-wrap + .sales-wrap { margin-top:16px; }
.sales-wrap .s-title { display:flex; justify-content:space-between; align-items:center; }
.sales-wrap .s-title h4,
.sales-wrap .s-title span.w20 { display:inline-flex; align-items:center; }
.sales-wrap .s-title span.w20 { margin-right:3px; }
.sales-wrap .s-title span.w20 img { width:20px; }
.sales-wrap ul.sales-list { display:block; margin-top:16px; }
.sales-wrap ul.sales-list li { width:100%; box-sizing:border-box; background-color:#fff; padding:16px; border-radius:8px; }
.sales-wrap ul.sales-list li + li { margin-top:8px; }
.sales-wrap .title { display:flex; gap:8px; align-items:center; }
.sales-wrap .title .name { font-size:16px; }
.sales-wrap .flex-box + .flex-box { margin-top:8px; }
.sales-wrap .desc { display:flex; gap:8px; }

.store-sales + .sub-cnt .nChart-wrap .tooltip .label,
.store-sales + .sub-cnt .nChart-wrap .tooltip .marker { display:none; }
.nChart-wrap.non-tit .tooltip .tt-title { display:none; }