/* Acre — 슬랙 스타일(깔끔·심플). 시안(시안 폴더)과 같은 색·크기. */
:root{--aub:#3F0E40;--aub-top:#350D36;--side:#4E1E51;--sel:#F3E4F3;--ink:#1D1C1D;--ink2:#5E5D60;--ink3:#8D8C8D;--line:#E6E6E6;--line2:#D6D6D6;--soft:#F7F7F8;--green:#2BAC76;--green-d:#007A5A;--red:#E01E5A;--red-d:#A3123A;--blue:#1264A3;--amber:#E8912D;--pur:#5B2A5D}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html,body{height:100%}
body{font-family:"Pretendard","Pretendard Variable","Malgun Gothic",sans-serif;background:var(--aub);color:var(--ink);font-size:14px;overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}
b{font-weight:700}
.top{height:40px;background:var(--aub-top);display:flex;align-items:center;justify-content:center;position:relative}
.search{width:min(720px,60vw);height:26px;border-radius:6px;background:rgba(255,255,255,.18);color:rgba(255,255,255,.82);display:flex;align-items:center;gap:8px;padding:0 10px;font-size:13px}
.search input{background:transparent;border:0;outline:0;color:#fff;flex:1}
.search input::placeholder{color:rgba(255,255,255,.75)}
.topr{position:absolute;right:14px;top:0;height:40px;display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.85);font-size:18px}
.topr .ver{font-size:11.5px;opacity:.7}
.av{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font-weight:700;flex:none;letter-spacing:-.5px}
.dot{position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border-radius:50%;border:2px solid #fff}
.dot.on{background:var(--green)}.dot.brk{background:var(--amber)}.dot.off,.dot.before,.dot.after{background:#fff;box-shadow:inset 0 0 0 1.6px #8D8C8D}.dot.lv{background:#A86AA9}
.top .dot{border-color:var(--aub-top)}.rail .dot{border-color:var(--aub)}
.wrap{position:absolute;top:40px;left:0;right:0;bottom:0;display:flex}
.rail{width:72px;display:flex;flex-direction:column;align-items:center;padding:8px 0 12px;flex:none}
.ws{width:38px;height:38px;border-radius:10px;background:#F7F4EE;overflow:hidden;flex:none;margin-bottom:14px}
.ws img{display:block;width:100%;height:100%}
.ri{display:flex;flex-direction:column;align-items:center;width:64px;margin-bottom:10px;color:rgba(255,255,255,.8)}
.rib{position:relative;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:21px}
.ri:hover .rib{background:rgba(255,255,255,.12)}
.ri.act .rib{background:rgba(255,255,255,.3);color:#fff}
.ril{font-size:11.5px;margin-top:3px}
.ri.act .ril{color:#fff;font-weight:600}
.bdg{position:absolute;top:-3px;right:-5px;min-width:18px;height:18px;border-radius:9px;background:var(--red);color:#fff;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--aub)}
.rsp{flex:1}
.pg{flex:1;display:flex;margin:0 6px 6px 0;border-radius:10px;overflow:hidden;min-width:0}
.side{width:264px;background:var(--side);padding:2px 10px 12px;color:rgba(255,255,255,.8);overflow-y:auto;flex:none}
.side::-webkit-scrollbar{width:8px}.side::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:4px}
.wsh{display:flex;align-items:center;gap:6px;height:48px;padding:0 8px;color:#fff}
.wsh b{font-size:18px;font-weight:800}
.wsh .sp{flex:1}
.si{display:flex;align-items:center;gap:9px;height:28px;padding:0 10px;border-radius:6px;font-size:14px;white-space:nowrap}
.si:hover{background:rgba(255,255,255,.08)}
.si i{font-size:17px;opacity:.9}
.si.sel{background:var(--sel);color:var(--aub);font-weight:700}
.si.unr{color:#fff;font-weight:700}
.si .cnt{margin-left:auto;background:var(--red);color:#fff;font-size:11px;font-weight:700;border-radius:9px;padding:1px 7px}
.si .cnt.soft{background:rgba(255,255,255,.2)}
.si.sel .cnt.soft{background:#D9C0DA;color:var(--aub)}
.si .hash{font-size:15px;width:17px;text-align:center;opacity:.75;font-weight:400}
.si .pc{margin-left:auto;font-size:12px;display:flex;align-items:center;gap:5px;opacity:.9;font-weight:400}
.si .pc:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}
.si .tag{margin-left:auto;font-size:11.5px;opacity:.85;font-weight:400}
.si .lk{margin-left:auto;font-size:14px;opacity:.65}
.si .off{opacity:.45}
.stp{width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.22);color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex:none}
.si.sel .stp{background:var(--aub);color:#fff}
.sh{display:flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,.65);padding:12px 10px 3px}
.sh i{font-size:13px}
/* 옆 목록 — 접고 펴는 묶음 */
button.sh,.sh2{background:none;border:0;width:100%;cursor:pointer;font-family:inherit;text-align:left}
button.sh:hover,.sh2:hover{color:#fff}
.sh2{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:rgba(255,255,255,.8);padding:8px 10px 4px 16px}
.sh2 i{font-size:13px}
.sir{display:flex;align-items:center}.sir .si{flex:1;min-width:0}
.stg{flex:none;width:26px;height:26px;border:0;border-radius:6px;background:none;color:rgba(255,255,255,.7);cursor:pointer;display:flex;align-items:center;justify-content:center}
.stg:hover{background:rgba(255,255,255,.1);color:#fff}
.stn .stc .si{padding-left:22px}.stn .stn .stc .si{padding-left:26px}
.stn .stc .si.on{color:#fff;font-weight:700}
.sh i,.sh2 i,.stg i{transition:transform .15s}.noanim .sh i,.noanim .sh2 i,.noanim .stg i{transition:none}
.stn.closed>.stc{display:none}
.stn.closed>.sir .stg i,.stn.closed>.sht i,.stn.closed>.sh2 i{transform:rotate(-90deg)}
.panel{flex:1;background:#fff;display:flex;min-width:0}
.main{flex:1;min-width:0;padding:18px 24px 24px;display:flex;flex-direction:column;gap:12px;overflow:auto}
.rp{width:360px;border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0;flex:none;overflow:hidden}
.rph{padding:16px 18px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px}
.rph b{font-size:17px}
.rph .sm{font-size:12.5px;color:var(--ink2)}
.rph .x{margin-left:auto;color:var(--ink3);font-size:18px;cursor:pointer}
.rpb{padding:14px 18px;display:flex;flex-direction:column;gap:14px;overflow:auto;flex:1}
.foot2{border-top:1px solid var(--line);padding:14px 18px;font-size:12.5px;color:var(--ink2);display:flex;flex-direction:column;gap:10px}
.hh{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ttl{font-size:22px;font-weight:800;letter-spacing:-.3px;display:flex;align-items:center;gap:10px}
.sub{font-size:13px;color:var(--ink2);margin-top:3px}
.btn{height:32px;padding:0 13px;border:1px solid #BDBDBD;border-radius:6px;font-size:13.5px;font-weight:600;background:#fff;display:inline-flex;align-items:center;gap:6px;margin-left:6px;color:var(--ink);white-space:nowrap;cursor:pointer}
.btn:hover{background:#F6F6F6}
.btn.pri{background:var(--green-d);border-color:var(--green-d);color:#fff}
.btn.pri:hover{background:#006A4E}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.btn i{font-size:16px}
.sb{height:26px;padding:0 10px;border:1px solid var(--line2);border-radius:6px;font-size:12.5px;font-weight:600;background:#fff;display:inline-flex;align-items:center;gap:4px;color:var(--ink);flex:none;white-space:nowrap;cursor:pointer}
.sb:hover{background:#F6F6F6}
.sb.pri{background:var(--green-d);border-color:var(--green-d);color:#fff}
.pill{font-size:11.5px;padding:2px 9px;border-radius:10px;white-space:nowrap;font-weight:600;background:#fff;color:#555;box-shadow:inset 0 0 0 1px #DCDCE0;display:inline-flex;align-items:center;gap:3px}
.pill.g{background:#E4F4EC;color:#00613F;box-shadow:none}.pill.r{background:#FDE7EC;color:var(--red-d);box-shadow:none}.pill.y{background:#FFF1D6;color:#8A5200;box-shadow:none}.pill.p{background:#F1E6F2;color:var(--pur);box-shadow:none}.pill.b{background:#E6F2FA;color:#0B4C7C;box-shadow:none}.pill.n{background:#F0F0F1;color:#555;box-shadow:none}
.card{background:var(--soft);border-radius:12px;padding:12px 16px;min-width:0;display:flex;flex-direction:column}
.chd{display:flex;align-items:center;gap:8px;margin-bottom:6px;min-height:24px}
.chd b{font-size:15px}
.chd .mut,.chd .pill{margin-left:auto}
.mut{font-size:12.5px;color:var(--ink2)}
.rw{display:flex;align-items:center;gap:10px;min-height:36px;font-size:13.5px}
.rw+.rw{border-top:1px solid #EBEBED}
.rt{flex:1;min-width:0;line-height:1.35}
.rt .a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rs{font-size:12px;color:var(--ink2)}
.lnk{font-size:12.5px;color:var(--blue);margin-top:auto;padding-top:6px}
.empty{font-size:13px;color:var(--ink3);padding:8px 0}
.unrd{width:7px;height:7px;border-radius:50%;background:var(--red);flex:none}
.unrd.no{background:transparent}
.strip{display:flex;align-items:center;gap:10px;padding:2px 2px 4px;font-size:13.5px;color:var(--ink2);flex-wrap:wrap}
.strip b{color:var(--ink)}
.strip .sep{width:1px;height:14px;background:#D9C9D9}
.strip i{font-size:16px;color:#6B3A6D}
.gd{width:9px;height:9px;border-radius:50%;background:var(--green);display:inline-block}
.gd.off{background:#fff;box-shadow:inset 0 0 0 1.6px #8D8C8D}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cards.x2{grid-template-columns:1.1fr 1fr 1fr}
.low{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;min-height:560px}
.rcol{display:flex;flex-direction:column;gap:12px;min-width:0}
.cb{width:17px;height:17px;border:1.5px solid #9A9A9A;border-radius:4px;flex:none;display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:#fff;background:#fff;cursor:pointer}
.cb.ck{background:var(--green-d);border-color:var(--green-d)}
.done{color:var(--ink3);text-decoration:line-through}
.addin{margin-top:8px;height:34px;border:1px dashed #CFCFD3;border-radius:7px;display:flex;align-items:center;gap:8px;padding:0 10px;background:#fff}
.addin input{border:0;outline:0;flex:1;min-width:0;background:transparent}
.addin input[type=date]{flex:none;width:118px;color:var(--ink2);font-size:12.5px}
.big{font-size:24px;font-weight:800;letter-spacing:-.3px;color:#5B2A5D}
.bar{height:9px;border-radius:5px;background:#E9DDEA;overflow:hidden;display:flex;margin:10px 0 6px}
.bar span{display:block;height:100%;background:#6E3470}
.trk,.trkl{display:grid;grid-template-columns:repeat(11,minmax(0,1fr)) minmax(0,1.9fr);gap:3px}
.trk{margin-top:10px}.trk span{height:20px;border-radius:4px}
.trk .used{background:#6E3470}.trk .granted{background:#E9DDEA}.trk .next{border:1px dashed #6E3470}.trk .future{border:1px solid #D6D6D6}.trk .missed{background:#FDE0E6}
.trk .m15{background:#E4F4EC;color:#00613F;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
.trkl{margin-top:3px;font-size:10.5px;color:var(--ink2);text-align:center}
.lg{display:flex;gap:12px;font-size:11.5px;color:var(--ink2);flex-wrap:wrap;align-items:center}
.lg .sw2{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px}
/* 달력 */
.calc{display:flex;flex-direction:column;min-height:0;min-width:0}
.calh{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}
.calh .mt{font-size:17px;font-weight:800;margin-right:4px}
.nb{width:26px;height:26px;border:1px solid var(--line2);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink2);font-size:15px;background:#fff}
.tb{height:26px;padding:0 10px;border:1px solid var(--line2);border-radius:6px;font-size:12.5px;display:inline-flex;align-items:center;font-weight:600;background:#fff}
.flt{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.fc{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--ink2);padding:3px 9px;border-radius:12px;background:var(--soft);white-space:nowrap}
.fc .sw{width:8px;height:8px;border-radius:2px;display:inline-block}
.wk{display:grid;grid-template-columns:repeat(7,1fr);font-size:12px;color:var(--ink2);padding:4px 0 5px;border-bottom:1px solid var(--line);font-weight:600}
.wk span{padding-left:7px}
.wk span:first-child{color:#D12B4E}.wk span:last-child{color:#1264A3}
.grid{flex:1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(104px,1fr);min-height:0}
.cc{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:3px 5px;overflow:hidden;min-width:0}
.cc:nth-child(7n){border-right:none}
.cc.tdy{background:#FBF6FB}
.cd{display:flex;align-items:center;gap:4px;height:23px;margin-bottom:2px}
.dn{font-size:12.5px;font-weight:700;min-width:23px;height:23px;display:flex;align-items:center;justify-content:center;border-radius:50%}
.dn.sun{color:#D12B4E}.dn.sat{color:#1264A3}
.tdy .dn{background:var(--aub);color:#fff}
.oth .dn{color:#C4C4C4}
.hl{font-size:11px;color:#D12B4E;white-space:nowrap;font-weight:600}
.ce{font-size:11.5px;line-height:19px;height:19px;padding:0 6px;border-radius:4px;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.ce.ev{background:#E6F2FA;color:#0B4C7C}.ce.lv{background:#F3E8F5;color:#4A154B}.ce.lvp{background:#fff;color:#4A154B;box-shadow:inset 0 0 0 1px #B58BB6}.ce.dl{background:#FDEAEF;color:#A3123A}.ce.pay{background:#E4F4EC;color:#00613F}.ce.todo{background:#F1F1F1;color:#454545}.ce.bd{background:#FCEAF2;color:#A01456}.ce.sh{background:#E2F1EE;color:#0B5A4F;font-weight:700}
.more{font-size:11px;color:var(--ink2);padding-left:6px}
/* 연락망 */
.dh{padding:16px 18px 10px}
.dh .t{display:flex;align-items:baseline;gap:8px}
.dh .t b{font-size:18px}
.dh .t span{font-size:12.5px;color:var(--ink2)}
.inp{height:34px;border:1px solid var(--line2);border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 10px;color:var(--ink3);font-size:13.5px;background:#fff}
.inp input{border:0;outline:0;flex:1;color:var(--ink)}
.seg{margin-top:10px;display:flex;gap:6px}
.seg span{font-size:12.5px;padding:4px 11px;border-radius:14px;border:1px solid var(--line2);color:var(--ink2);font-weight:600;cursor:pointer}
.seg span.on{background:var(--aub);border-color:var(--aub);color:#fff}
.dlist{flex:1;overflow:auto;border-top:1px solid var(--line);padding-bottom:6px}
.bday{display:flex;align-items:center;gap:8px;padding:8px 18px;font-size:12.5px;background:#FCF3F7;border-top:1px solid var(--line);white-space:nowrap;color:var(--ink2);overflow:hidden}
.bday i{color:#B8175A;font-size:16px}.bday b{color:var(--ink)}.bday em{font-style:normal;color:#B8175A;font-weight:700;margin-left:2px}
.bd{display:inline-flex;align-items:center;gap:2px;margin-left:6px;font-size:11px;font-weight:700;color:#B8175A;background:#FCEAF2;border-radius:9px;padding:0 6px;height:17px;vertical-align:1px}
.gh{display:flex;align-items:center;gap:8px;padding:8px 18px 2px}
.gh b{font-size:13.5px;white-space:nowrap}
.gh .gm{font-size:12px;color:var(--ink2);white-space:nowrap}
.gh .call{margin-left:auto;width:26px;height:26px;font-size:14px}
.pr{display:flex;align-items:center;gap:10px;padding:0 18px;height:40px}
.pt{flex:1;min-width:0;line-height:1.32}
.pt b{font-size:14px;font-weight:700}
.pt .rl{font-size:12.5px;color:var(--ink2);margin-left:5px}
.pt .me{font-size:11px;color:var(--ink3);margin-left:4px}
.st{font-size:12.5px;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st.on{color:var(--green-d)}.st.lv{color:#6B2F6D}
.call{width:28px;height:28px;border:1px solid var(--line2);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--green-d);font-size:15px;flex:none;background:#F2FAF6;border-color:#BFE3D3}
.hide{display:none!important}
/* 표(근무) */
.legend{display:flex;align-items:center;gap:14px;font-size:12.5px;color:var(--ink2);flex-wrap:wrap}
.legend .k{display:inline-flex;align-items:center;gap:6px}
.tbl{display:grid;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-content:start;overflow-x:auto}
.main>.tbl{flex-shrink:0}  /* 세로 틀 안에서 가로 스크롤 표가 화면이 낮으면 0으로 찌그러지던 것 */
.tbl>div{height:44px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #F0F0F1;min-width:0}
.tbl .hd{height:46px;flex-direction:column;font-size:11.5px;color:var(--ink2);line-height:1.25;background:#FAFAFB;border-bottom:1px solid var(--line)}
.tbl .hd b{font-size:12.5px;color:var(--ink)}
.tbl .hd.sun b,.tbl .hd.sun span,.tbl .hd.hol b,.tbl .hd.hol span{color:#D12B4E}
.tbl .hd.sat b,.tbl .hd.sat span{color:#1264A3}
.tbl .hd.tdy b{background:var(--aub);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center}
.tbl .nm{justify-content:flex-start;gap:8px;padding-left:4px}
.tbl .nm .t{line-height:1.2;min-width:0}
.tbl .nm b{font-size:13.5px}
.tbl .nm .t span{display:block;font-size:11.5px;color:var(--ink2);white-space:nowrap}
.tbl .sm{font-size:12.5px;font-variant-numeric:tabular-nums;border-left:1px solid #F0F0F1}
.tbl .foot{height:40px;background:#FAFAFB;font-size:12px;color:var(--ink2);border-bottom:none}
.c{width:23px;height:30px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700;position:relative;cursor:pointer}
.c.f{background:#E7EEF9;color:#1B4F8F}.c.o{background:#E3F2EF;color:#0B5A4F}.c.m{background:#FDF1DC;color:#8A5200}.c.cl{background:#EFE6F3;color:#5B2A5D}.c.p{background:#FBE9EE;color:#9B1C47}.c.g{background:#EEE;color:#444}
.c.off,.c.none{color:#C9C9CC;font-weight:400}
.c.lv{background:#6E3470;color:#fff}
.c.lvp{background:#fff;color:#6E3470;border:1.5px dashed #6E3470}
.c.sel{outline:2px solid var(--aub);outline-offset:1px}
.c.h{background:transparent;color:#4A4A4D;font-weight:600}
.c.chg{background:#FFE9B8;color:#6B4000}
.c.ab{background:#FDE0E6;color:#A3123A}
.c.q{background:#fff;color:#A3123A;box-shadow:inset 0 0 0 1.5px #E01E5A}
.c .mk{position:absolute;top:-6px;right:-5px;font-size:9.5px;font-weight:800;color:#8A5200;background:#fff;border-radius:6px;padding:0 2px;line-height:12px;box-shadow:0 0 0 1px #F0D08A}
.c .qd{position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--red);border:1.5px solid #fff}
.c .edt{position:absolute;bottom:2px;right:2px;width:4px;height:4px;border-radius:50%;background:#C08A1E}
.warn{background:#FDE7EC;color:#A3123A;font-weight:700;border-radius:4px;min-width:23px;height:22px;display:flex;align-items:center;justify-content:center}
.okn{font-weight:600;color:#4A4A4D}
.sw{width:22px;height:20px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700}
.lower{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:14px}
.wt{display:grid;font-size:13px;font-variant-numeric:tabular-nums}
.wt>div{height:31px;display:flex;align-items:center;justify-content:center;border-top:1px solid #EBEBED}
.wt .wh{height:34px;border-top:none;font-size:12px;color:var(--ink2);flex-direction:column;line-height:1.2}
.wt .wn{justify-content:flex-start;font-weight:700}
.wt .lo{color:#8D8C8D}.wt .hi{color:#8A5200;font-weight:700}
.tr{display:flex;align-items:center;gap:10px;min-height:32px;font-size:13px;border-top:1px solid #EBEBED}
.tr:first-of-type{border-top:none}
.box{background:var(--soft);border-radius:10px;padding:12px 14px;font-size:13.5px;line-height:1.5}
.box.warnb{background:#FFF5E1}
.h3{font-size:13px;font-weight:700;color:var(--ink2);margin-bottom:4px}
.cl2{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-top:1px solid #EFEFF1;font-size:13px;line-height:1.4}
.cl2:first-child{border-top:none}
.cl2 .d{width:64px;flex:none;color:var(--ink2);font-size:12.5px}
/* 주별 스케줄 */
.spick{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.spc{gap:7px}
.spt{display:flex;align-items:center;gap:8px;font-size:16px}.spt i{font-size:20px;color:var(--aub)}.spt:hover b{text-decoration:underline}
.spb{display:flex;gap:6px;margin-top:4px}.spb .sb{margin:0}
.wkb{margin-top:14px;gap:10px}
.mcal{margin-top:14px;gap:0}
.mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(92px,auto)}
.mgrid .cc:nth-child(7n){border-right:1px solid var(--line)}.mgrid .cc.lastc{border-right:none}
.mcc{cursor:pointer;transition:background .12s}.mcc:hover{background:#FAF7FA}.mcc.sel{background:#F3E8F3;box-shadow:inset 0 0 0 2px var(--aub)}
.mcc:focus-visible{outline:2px solid var(--aub);outline-offset:-2px}
.mcn{margin-left:auto;font-size:11px;color:var(--ink3);font-variant-numeric:tabular-nums}
.mdots{display:flex;flex-wrap:wrap;gap:3px;padding:2px 1px}
.mdot{width:9px;height:9px;border-radius:50%;display:inline-block}.mdot[hidden]{display:none}
.oth .mdot{opacity:.45}
.mdet{grid-column:1/-1;overflow:hidden;max-height:0;transition:max-height .2s ease;background:#FBFAFC;border-bottom:1px solid var(--line);box-shadow:inset 0 3px 6px -4px rgba(0,0,0,.15)}
.mdh{display:flex;align-items:center;gap:8px;padding:10px 12px 4px}.mdh b{font-size:14px}.mdh .x{margin-left:auto;border:0;background:none;cursor:pointer;color:var(--ink2);font-size:18px}
.mdg{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 16px;padding:0 12px 12px}
.mds[hidden]{display:none}.mds .wkp{gap:6px}
.wkn{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px}.wkn>b{font-size:15px}
.wkf{display:flex;flex-wrap:wrap;gap:4px;margin-left:6px}
.wkf button{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 10px;border:1px solid var(--line2);border-radius:14px;background:#fff;font:inherit;font-size:12.5px;color:var(--ink2);cursor:pointer}
.wkf button i{font-size:14px}.wkf button.on{background:var(--aub);border-color:var(--aub);color:#fff}
.wkg{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden}
.wkd{border-left:1px solid var(--line);min-height:160px;padding:0 0 8px;min-width:0}.wkd:first-child{border-left:0}
.wkd.today{background:#FBF6FB}
.wkh{display:flex;align-items:baseline;gap:5px;padding:8px 9px;border-bottom:1px solid var(--line);background:#FAFAFB;font-size:13px;white-space:nowrap}
.wkd.today .wkh{background:#F3E8F3}.wkd.red .wkh b{color:var(--red-d)}
.wkh .hol{font-size:11px;color:var(--red-d);overflow:hidden;text-overflow:ellipsis}
.wkh .wkc{margin-left:auto;font-size:12px;color:var(--ink3)}
.wks{padding:6px 7px 2px}.wks[hidden]{display:none}
.wksn{display:flex;align-items:center;gap:4px;font-size:11.5px;font-weight:700;color:var(--ink2);margin:2px 0 4px}.wksn i{font-size:13px;color:var(--aub)}.wksn span{color:var(--ink3);font-weight:400}
.wkp{display:flex;align-items:center;gap:5px;font-size:12.5px;padding:2px 0;min-width:0}.wkp b{white-space:nowrap}
.wpk{flex:none;font-size:10.5px;font-weight:700;border-radius:4px;padding:1px 5px;background:#EEE;color:#444}
.wpk.f{background:#E7EEF9;color:#1B4F8F}.wpk.o{background:#E3F2EF;color:#0B5A4F}.wpk.m{background:#FDF1DC;color:#8A5200}.wpk.cl{background:#EFE6F3;color:#5B2A5D}.wpk.p{background:#FBE9EE;color:#9B1C47}
.wtm{margin-left:auto;font-size:11.5px;color:var(--ink3);font-variant-numeric:tabular-nums;white-space:nowrap}
.wkl{font-size:11.5px;color:var(--ink3);padding:2px 0}.wkl i{font-size:12px}
.wke{padding:10px 9px}
@media (max-width:1100px){.wkg{grid-template-columns:1fr}.wkd{border-left:0;border-top:1px solid var(--line);min-height:0}.wkd:first-child{border-top:0}}
.wsites{margin-bottom:8px}.wsites .chip i{margin-right:3px}
.cpcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:10px;margin-bottom:14px}
.cpc.on{border-color:var(--aub);background:#FBF6FB;box-shadow:inset 0 0 0 1px var(--aub)}.cpc.on .mut{color:var(--aub);font-weight:600}
.cpc{gap:6px;color:inherit;text-decoration:none;transition:border-color .12s}.cpc:hover{border-color:var(--aub)}
.cph{display:flex;align-items:center;gap:8px;font-size:15.5px}.cph i{font-size:19px;color:var(--aub)}.cph .pill{margin-left:auto}
.cpv{display:flex;flex-direction:column;gap:2px;font-size:12.5px;color:var(--ink2)}.cpv b{color:var(--ink);font-variant-numeric:tabular-nums}
.cpc .mut{font-size:12px;margin-top:2px}
.cpt .cpay{background:#FBFAF4;justify-content:flex-end;padding-right:7px}.cpt .hd.cpay{background:#F7F4E6;align-items:flex-end}
.cpt .cpay.big{background:#F4F9F6}.cpt .hd.cpay.big{background:#E8F3EE}.cpt .cpay.skip{justify-content:flex-start;padding-left:10px;color:var(--ink3);font-size:12px}
.cpt .foot.cpay{background:#F2EFDF}.cpt .foot.cpay.big{background:#E3F0E9}
.fvck{display:inline-flex;align-items:center;gap:5px;font-size:13px;white-space:nowrap}.fvck input{width:15px;height:15px}
.qi{display:flex;align-items:center;gap:10px}
.qi .qt{font-weight:700;font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:6px}
.qbox{flex:1;height:40px;border:1.5px solid var(--aub);border-radius:8px;display:flex;align-items:center;padding:0 12px;font-size:15px;box-shadow:0 0 0 3px #EAD3EB;background:#fff}
.qbox input{border:0;outline:0;flex:1;font-size:15px}
.qprev{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink2)}
.qprev .qline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.qprev .err{color:var(--red-d)}
.wtb{display:grid;grid-template-columns:170px repeat(7,minmax(0,1fr)) 96px 116px;border-top:1px solid var(--line)}
.wtb>div{min-height:56px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #F0F0F1;position:relative}
.wtb .bh{min-height:38px;background:#FAFAFB;font-size:13px;font-weight:700;color:var(--ink2);border-bottom:1px solid var(--line)}
.wtb .bh.sat{color:#1264A3}.wtb .bh.sun{color:#D12B4E}
.wtb .bn{justify-content:flex-start;gap:10px;padding-left:6px}
.wtb .bn b{display:block;font-size:14px}.wtb .bn span{font-size:12px;color:var(--ink2)}
.shift{width:calc(100% - 12px);height:42px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2;cursor:pointer;border:0}
.shift b{font-size:13.5px}.shift span{font-size:11.5px;opacity:.85}
.shift.f{background:#E7EEF9;color:#1B4F8F}.shift.o{background:#E3F2EF;color:#0B5A4F}.shift.m{background:#FDF1DC;color:#8A5200}.shift.cl{background:#EFE6F3;color:#5B2A5D}.shift.p{background:#FBE9EE;color:#9B1C47}.shift.g{background:#EEE;color:#444}
.shift.off{background:#fff;color:#B0B0B3;border:1px dashed #DADADF;font-size:13px}
.shift.on{outline:2px solid var(--aub);outline-offset:1px}
.pop{position:absolute;top:50px;left:6px;z-index:20;width:210px;background:#fff;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.16),0 0 0 1px rgba(0,0,0,.06);padding:6px;display:flex;flex-direction:column;gap:2px}
.pop button{display:flex;align-items:center;gap:8px;height:30px;padding:0 8px;border-radius:6px;font-size:13px;white-space:nowrap;border:0;background:#fff;cursor:pointer;text-align:left}
.pop button:hover{background:#F3E4F3}
.pop .rs{margin-left:auto}
.wtb .ft{min-height:42px;background:#FAFAFB;font-size:12.5px;color:var(--ink2)}
.cov{display:flex;align-items:center;gap:8px;height:30px;font-size:12.5px;border-top:1px solid #EBEBED}
.cov:first-of-type{border-top:none}
.cov .dl{width:18px;font-weight:700;color:var(--ink2)}
.cov .bars{flex:1;display:grid;gap:1px}
.cov .bars span{height:16px;border-radius:2px}
.cov .ok{width:150px;text-align:right;color:var(--ink2);white-space:nowrap}
/* 폼 */
.fm{display:flex;flex-direction:column;gap:10px}
.fm label{font-size:12.5px;color:var(--ink2);font-weight:600;display:flex;flex-direction:column;gap:4px}
.fm input,.fm select,.fm textarea{height:34px;border:1px solid var(--line2);border-radius:7px;padding:0 10px;background:#fff;font-size:13.5px}
.fm textarea{height:70px;padding:8px 10px;resize:vertical}
.fm .row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.chip{font-size:12.5px;padding:4px 11px;border-radius:14px;border:1px solid var(--line2);color:var(--ink2);font-weight:600;white-space:nowrap;background:#fff;cursor:pointer}
.chip.on{background:var(--aub);border-color:var(--aub);color:#fff}
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#1D1C1D;color:#fff;padding:10px 16px;border-radius:8px;font-size:13.5px;z-index:99;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.toast.err{background:#A3123A}
.msgs{display:flex;flex-direction:column;gap:6px}
.msg{padding:9px 12px;border-radius:8px;background:#E4F4EC;color:#00613F;font-size:13.5px}
.msg.error{background:#FDE7EC;color:#A3123A}
.gt{width:100%;border-collapse:collapse;font-size:13px}
.gt th{font-size:12px;color:var(--ink2);font-weight:700;text-align:left;padding:8px 8px;background:#FAFAFB;border-bottom:1px solid var(--line);white-space:nowrap}
.gt td{padding:8px 8px;border-bottom:1px solid #F0F0F1;vertical-align:middle}
.feed{display:flex;flex-direction:column}
.msgp{display:flex;gap:12px;padding:12px 6px;border-bottom:1px solid #F0F0F1}
.msgp .body{flex:1;min-width:0;line-height:1.5}
.msgp .who{display:flex;align-items:baseline;gap:8px}
.msgp .who b{font-size:14.5px}
.msgp .who span{font-size:12px;color:var(--ink3)}
.pin{display:flex;align-items:center;gap:10px;background:#FFF8E6;border-radius:10px;padding:10px 14px;font-size:13.5px}
.login{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--aub)}
.login .lc{width:380px;background:#fff;border-radius:14px;padding:28px 28px 22px}
.login h1{font-size:22px;font-weight:800;margin-bottom:4px}

/* 엑셀로 넣기·빼기 */
.xl2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;align-items:start}
.xlc{padding:14px 18px}
.xh{display:flex;align-items:center;gap:8px;font-size:15px;padding-bottom:10px;flex-wrap:wrap}
.xh>i{font-size:19px;color:var(--aub)}
.xrow{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #E6E6E8;flex-wrap:wrap}
.xrow .btn{margin-left:0}
.xn{width:22px;height:22px;border-radius:50%;background:var(--aub);color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex:none}
.xt{flex:1;min-width:200px;font-size:13.5px;line-height:1.45}
.xfile{font-size:12.5px;max-width:240px}
.xsel{height:32px;border:1px solid var(--line2);border-radius:6px;padding:0 8px;font-size:13px;background:#fff;color:var(--ink);font-family:inherit}
.xlab{display:flex;align-items:center;gap:6px;white-space:nowrap}
.xprev{margin-top:14px;padding:14px 18px}
.xtb{border-top:1px solid var(--line)}
.xr{display:grid;grid-template-columns:48px 110px 160px 76px minmax(0,1fr);gap:8px;align-items:center;padding:8px 4px;border-bottom:1px solid #EBEBED;font-size:13.5px}
.xr.xhd{font-size:12px;color:var(--ink2);font-weight:700;background:#FAFAFB}
.xch{line-height:1.6}
.cg{display:inline-block;margin-right:14px;font-size:12.5px;white-space:nowrap}
.cg b{color:var(--ink2);font-weight:600;margin-right:2px}
.cg s,.xwk s{color:var(--ink3)}
.er{color:#A3123A;font-size:12.5px;display:flex;gap:4px;align-items:center}
.wn{color:#8A5200;font-size:12.5px;display:flex;gap:4px;align-items:center}
.xft{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding-top:12px}
.xft .rs{margin-right:auto}
.xsite{display:flex;align-items:center;gap:8px;margin:14px 0 6px;font-size:14px}
.xwk{display:grid;grid-template-columns:130px repeat(7,minmax(0,1fr)) 80px minmax(0,1.8fr);border-top:1px solid var(--line)}
.xwk>div{padding:6px;border-bottom:1px solid #EBEBED;font-size:13px;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:42px;text-align:center}
.xwk .wh{background:#FAFAFB;font-size:12px;color:var(--ink2);font-weight:700;min-height:32px}
.xwk .wn2{align-items:flex-start;text-align:left}
.xwk .wc.chg{background:#FFF4D6;font-weight:700}
.xwk .wc s{font-weight:400;font-size:11.5px}
.xwk .wnote{align-items:flex-start;text-align:left}

/* 휴대폰 달력에 넣기 */
.calurl{display:flex;gap:6px;align-items:center;margin-top:8px}
.calurl .btn{margin-left:0}
.calurl input{flex:1;min-width:0;height:34px;border:1px solid var(--line2);border-radius:8px;padding:0 10px;font-size:13px;font-family:ui-monospace,Consolas,monospace;background:#fff;color:var(--ink)}
.steps{margin:6px 0 8px;padding-left:20px;font-size:13.5px;line-height:1.8}

/* 글머리(공지·이슈·레시피 변경) — 폭을 맞춰 제목이 한 줄로 서게 */
.pill.lab{width:76px;justify-content:center;flex:none}
/* 게시판 — 공지 모음 */
.ntc{background:#FFF8E6;border-radius:12px;padding:8px 14px}
.ntch{display:flex;align-items:center;gap:8px;font-size:13.5px;height:30px}
.ntch i{color:#8A5200;font-size:17px}
.ntr{display:flex;align-items:center;gap:10px;min-height:38px;font-size:13.5px;border-top:1px solid #F3E4C2}
.ntr .t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 주휴·연차 대상 — 따로 표시(연차는 5인 이상 사업장만) */
.elig{display:inline-flex;gap:3px;flex-wrap:nowrap}
.elig .pill{padding:2px 7px}
/* 연차 — 직원별 현황 */
.lvt td{padding:6px 8px}
.lvbar{display:flex;align-items:center;gap:8px}
.lvbar b{min-width:44px;font-size:13.5px}
.lvbar .bar{width:90px;height:6px;border-radius:3px;background:#ECE3EC;overflow:hidden;display:inline-block;margin:0}
.lvbar .bar i{display:block;height:100%;background:#7C3A7E;border-radius:3px}
.gt td.r,.gt th.r{text-align:right;font-variant-numeric:tabular-nums}
.gt td.c,.gt th.c{text-align:center;display:table-cell;width:auto;height:auto;border-radius:0;font-size:inherit;font-weight:inherit;position:static;cursor:auto}
/* 내 할 일 */
.tdg{margin-top:4px}
.tdg .gh2{font-size:13px;font-weight:800;color:var(--ink2);padding:10px 2px 4px;display:flex;gap:6px;align-items:center}
.tdg .gh2.late{color:var(--red-d)}
.tdr{display:flex;align-items:center;gap:10px;min-height:42px;border-top:1px solid #EBEBED;font-size:14px}
.tdr .tt{flex:1;min-width:0}
.tdr .tt .rs{margin-top:1px}
.tdr .ck{width:20px;height:20px;border-radius:5px;border:1.5px solid #A3A3A8;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;flex:none}
.tdr .ck.on{background:var(--green-d);border-color:var(--green-d)}
.tdr.dn .tt b{color:var(--ink3);text-decoration:line-through;font-weight:500}
.tdr .ib{border:0;background:none;color:var(--ink3);font-size:17px;cursor:pointer;padding:4px}
.tdr .ib:hover{color:var(--ink)}
.tdadd{display:flex;gap:8px;align-items:center}
.tdadd input{height:38px;border:1px solid var(--line2);border-radius:8px;padding:0 12px;font-size:14px;background:#fff}
.tdadd input[name=title]{flex:1;min-width:0}
.lvt .nm{display:flex;align-items:center;gap:8px}
.lvt .nm .t{line-height:1.25}
.lvt .nm .t b{display:block;font-size:13.5px}
.lvt .nm .t span{font-size:11.5px;color:var(--ink2)}
.lvt{table-layout:fixed}
.lvt th:nth-child(1){width:14%}.lvt th:nth-child(2){width:15%}.lvt th:nth-child(3){width:17%}
.lvt th:nth-child(4),.lvt th:nth-child(5){width:7%}.lvt th:nth-child(6){width:15%}
.lvt th:nth-child(7){width:11%}.lvt th:nth-child(8){width:9.5%}.lvt th:nth-child(9){width:4.5%}
.lvt td{overflow:hidden;text-overflow:ellipsis}
/* 내 할 일 — 세 칸씩 */
.td3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}
.td3 .card{padding:10px 14px 8px;min-height:0}
.td3.row1 .card{min-height:300px}
.td3 .chd{margin-bottom:2px}
.td3 .chd .rs{margin-left:6px}
.td3 .chd .cnt2{margin-left:auto}
.qadd{display:flex;gap:6px;align-items:center;margin-top:auto;padding-top:8px}
.qadd input,.qadd select,.qadd textarea{height:32px;border:1px dashed #CFCFD3;border-radius:7px;padding:0 10px;background:#fff;font-size:13px;font-family:inherit;min-width:0}
.qadd input[name=title]{flex:1}
.qadd select,.qadd input[type=date]{flex:none;width:118px;border-style:solid;color:var(--ink2)}
.qadd textarea{flex:1;height:52px;padding:6px 10px;resize:none}
.qadd .btn{margin:0;height:32px}
.tdr .ck{width:19px;height:19px}
.tdr{min-height:40px;font-size:13.5px}
.tdr .dday{font-size:11.5px;font-weight:700;color:var(--ink2);white-space:nowrap}
.tdr .dday.late{color:var(--red-d)}
.tdr .dday.today{color:var(--green-d)}
.memo{display:flex;gap:8px;align-items:flex-start;padding:8px 0;border-top:1px solid #EBEBED;font-size:13.5px}
.memo:first-of-type{border-top:none}
.memo .mb{flex:1;min-width:0;white-space:pre-line;line-height:1.5}
.memo .mb .rs{display:block;margin-top:2px}
.memo.pin{background:#FFF8E6;border-radius:8px;padding:8px;border-top:none;margin-bottom:4px}
.memo .ib{border:0;background:none;color:var(--ink3);font-size:16px;cursor:pointer;padding:2px}
.memo .ib.on{color:#C47F00}
.memo textarea{width:100%;min-height:70px;border:1px solid var(--line2);border-radius:7px;padding:6px 8px;font-size:13.5px;font-family:inherit;resize:vertical}
.td3 .chd+.tdr,.td3 .chd+.memo{border-top:none}
/* 내 할 일 — 왼쪽 두 칸 × 두 줄, 오른쪽 메모는 위아래로 길게 */
.tdgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"today week memo" "nodue done memo";gap:12px;align-items:stretch}
.tdgrid .card{padding:10px 14px 8px;min-height:0}
.tdgrid .chd{margin-bottom:2px}
.tdgrid .chd .rs{margin-left:6px}
.tdgrid .chd .cnt2{margin-left:auto}
.tdgrid .chd+.tdr,.tdgrid .chd+.memos .memo:first-child{border-top:none}
.c-today{grid-area:today}.c-week{grid-area:week}
.c-nodue{grid-area:nodue}.c-done{grid-area:done}
.c-memo{grid-area:memo}
.c-memo .memos{flex:1;min-height:0;overflow:auto}
.c-memo .qadd textarea{height:64px}
.qadd input[type=date]:invalid{color:var(--ink3)}
.tdgrid .subh{font-size:12px;font-weight:700;color:var(--ink2);padding:10px 0 2px;display:flex;align-items:center;gap:6px;border-top:1px dashed #DCDCE0;margin-top:6px}
.tdgrid .subh+.tdr{border-top:none}
/* 두 줄을 같은 높이로 화면 아래까지 — 목록이 많으면 칸 안에서만 스크롤 */
.tdgrid{flex:1;min-height:0;grid-template-rows:minmax(280px,1fr) minmax(280px,1fr)}
.tdgrid .lst{flex:1;min-height:0;overflow:auto}
.tdgrid .lst>.tdr:first-child{border-top:none}
/* 높이는 고정(화면 아래까지 늘리지 않음) */
.tdgrid{flex:none;grid-template-rows:repeat(2,320px)}
/* 달력 — 날짜 칸을 누르면 일정 추가, 일정을 누르면 고치기 */
.low.one{grid-template-columns:minmax(0,1fr)}
.grid .cc{cursor:pointer}
.grid .cc:hover{background:#FAF6FA}
.grid .cc.tdy:hover{background:#F6EEF6}
.ce[data-edit="1"]{cursor:pointer}
.ce[data-edit="1"]:hover{filter:brightness(.95)}
.ce.sh{background:#E2F1EE;color:#0B5A4F;font-weight:700}
.mbg{position:fixed;inset:0;background:rgba(29,28,29,.35);display:flex;align-items:center;justify-content:center;z-index:50}
.mbg[hidden]{display:none}
.mdl{width:420px;background:#fff;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.25);padding:16px 18px;gap:10px}
.mdl .mh{display:flex;align-items:center;gap:8px}
.mdl .mh b{font-size:16px}
.mdl .mh .x{margin-left:auto;border:0;background:none;font-size:18px;color:var(--ink3);cursor:pointer}
.mdl .mf{display:flex;gap:6px;justify-content:flex-end;padding-top:4px}
.mdl .mf .btn{margin:0}
.ce[data-tid]{cursor:pointer}
.mdl [hidden]{display:none!important}
/* 홈 공지·이슈 칸 — 왼쪽으로 당기고 제목을 두 줄까지 */
.pcard .rw{gap:8px;align-items:flex-start;padding:6px 0}
.pcard .pill.lab{width:60px;font-size:11px;padding:2px 0;margin-top:1px}
.pcard .rt .a{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}
.pcard .rw.unread .rt .a{font-weight:700}
.pcard .rw.unread .rt .a::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red);margin:0 5px 2px 0;vertical-align:middle}
.pcard .sb{padding:0 9px;margin-top:1px}
/* 일정 달력 — 내 근무는 날짜 옆에 작게 */
.cd .shl{margin-left:auto;font-size:10.5px;color:#0B5A4F;background:#E9F5F2;border-radius:4px;padding:0 5px;white-space:nowrap;font-weight:600}
/* 옆 목록 하나 — 길어지면 옆 목록만 스크롤 */
.side{overflow-y:auto;padding-bottom:16px}
.side::-webkit-scrollbar{width:6px}.side::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}
.wtabs{margin-top:-4px}
/* 마이페이지·명부·서류 */
.meg{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:12px;align-items:start}
.fm .row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.fm .lk{font-weight:400;color:var(--ink3);font-size:11.5px}
.fm .ckl{flex-direction:row;align-items:center;gap:6px;color:var(--ink);font-size:13.5px;font-weight:500}
.fm .ckl input{width:16px;height:16px}
.fm .ckl.prob{margin-top:22px}
.kv{display:flex;gap:12px;min-height:36px;align-items:center;border-top:1px solid #EBEBED;font-size:13.5px}
.kv:first-of-type{border-top:none}
.kv>span{width:110px;flex:none;color:var(--ink2);font-size:12.5px}
.pplt td{padding:6px 8px;font-size:13px}
.pplt .nm{display:flex;align-items:center;gap:8px}
.pplt .nm .t b{display:block;font-size:13.5px}
.pplt .nm .t span{font-size:11.5px;color:var(--ink2)}
.pplt tr.sel td{background:#FBF6FB}
.seg2{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.kc{flex-direction:row!important;align-items:center;gap:10px;border:1px solid var(--line2);border-radius:10px;padding:14px 14px;cursor:pointer;background:#fff}
.kc input{width:16px;height:16px}
.kc span{display:flex;flex-direction:column;gap:4px}
.kc b{font-size:14px;color:var(--ink)}
.kc em{font-style:normal;font-size:12px;color:var(--ink2);font-weight:400;line-height:1.4}
.kc:has(input:checked){border-color:var(--aub);box-shadow:inset 0 0 0 1px var(--aub);background:#FBF6FB}
.cks2{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 12px;font-size:13.5px}
.cks2 label{flex-direction:row!important;align-items:center;gap:6px;color:var(--ink)!important;font-weight:500!important;font-size:13.5px!important}
.cks2 input{width:16px;height:16px}
.fm [hidden]{display:none!important}
.pplt{table-layout:fixed}
.pplt th:nth-child(1){width:12%}.pplt th:nth-child(2){width:8%}.pplt th:nth-child(3){width:7%}.pplt th:nth-child(4){width:13%}
.pplt th:nth-child(5){width:12%}.pplt th:nth-child(6){width:18%}.pplt th:nth-child(7){width:11%}.pplt th:nth-child(8){width:12%}
.pplt td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fm .lh{display:flex;align-items:baseline;gap:6px}
.pplt th:nth-child(9){width:7%}
.pplt td:nth-child(9){text-align:right;white-space:nowrap}
/* 내 정보 필수 칸·명부 생일·계약서 */
.req{color:var(--red);font-weight:700}
.need{display:flex;gap:10px;align-items:flex-start;background:#FDF1F4;border:1px solid #F4C6D3;border-radius:8px;padding:10px 12px;font-size:13px;color:var(--red-d);line-height:1.55}
.need>i{font-size:18px;margin-top:1px}
.need span{display:block;color:#9A4A5E;font-size:12px;font-weight:400}
.card .need{margin-bottom:8px}
.pubnote{font-size:12px;color:var(--ink2);display:flex;align-items:center;gap:5px;margin-top:-4px}
.fm input.flash{animation:flash 1.4s}
@keyframes flash{from{background:#FFF3C4}to{background:#fff}}
.pplt .nm .t .bdy{color:#C2410C;font-weight:600;margin-left:0}
.sb .rdot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-left:2px;vertical-align:top}
.ctl td{padding:8px 10px;font-size:13.5px}
.ctl th:nth-child(1){width:16%}.ctl th:nth-child(2){width:20%}.ctl th:nth-child(3){width:30%}.ctl th:nth-child(5){width:90px}
.wtabs .chip{display:inline-flex;align-items:center;gap:5px;font-size:13px;padding:5px 12px}
.wtabs .chip i{font-size:15px}
/* 서류 신청 — 위아래 여유 */
.fm.roomy{gap:18px}
.fm.roomy label{gap:7px}
.fm .cert-only,.fm .resign-only,.fm .letter-only{display:flex;flex-direction:column;gap:18px}
/* 내 연차 — 올해 연차 흐름(달마다 막대) · 지난 연차 기록 */
.mcol{display:flex;flex-direction:column;gap:12px;min-width:0}
.lvg{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-auto-rows:1fr;gap:12px}
.lfoot{margin-top:auto;padding-top:8px}
.lreq{position:relative;min-height:210px}.lreq .lreqs{position:absolute;left:16px;right:16px;top:44px;bottom:6px;overflow-y:auto}
.lfb,.lfl{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px}
.lfb{align-items:end;height:92px;margin:6px 0 4px}
.lfb .c{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:3px}
.lfb .stk{display:flex;flex-direction:column;width:100%;max-width:28px;border-radius:4px 4px 2px 2px;overflow:hidden}
.lfb .u{background:#6E3470}
.lfb .w,.lflg .wsw{background:repeating-linear-gradient(45deg,#EFE5F0 0 4px,#D8C2D9 4px 8px);box-shadow:inset 0 0 0 1px #B892BA}
.lfb .n{font-size:11px;font-weight:700;color:#6E3470}
.lfb .z{height:3px;width:100%;max-width:28px;background:#E2E2E6;border-radius:2px}
.lfb .c.now .z{background:#6E3470}
.lfl{font-size:11.5px;color:var(--ink3);text-align:center;padding-bottom:16px}
.lfl span{position:relative;white-space:nowrap}
.lfl .now{color:#6E3470;font-weight:800}
.lfl .now::after{content:"오늘";position:absolute;left:50%;top:16px;transform:translateX(-50%);font-size:10px;color:#fff;background:#6E3470;border-radius:6px;padding:0 5px;line-height:14px}
.lfl .end{color:#B26B00;font-weight:800}
.lflg{display:flex;gap:12px;font-size:12px;color:var(--ink2);margin:6px 0 2px;flex-wrap:wrap;align-items:center}
.lflg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px}
.lhy{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--line)}
.chd+.lhy{border-top:0}
.lhy .lb{width:152px;flex:none;line-height:1.35;word-break:keep-all}
.lhy .lb .a{font-size:13px;font-weight:600}
.lhbar{flex:1;min-width:40px;height:10px;border-radius:5px;background:#ECECEF;overflow:hidden;display:flex}
.lhbar .u{background:#6E3470}.lhbar .x{background:repeating-linear-gradient(45deg,#E6E6EA 0 4px,#CFCFD6 4px 8px)}
.lhy .pill{min-width:112px;justify-content:center}
.kv.pl>span{width:128px}.kv.pl>.pill{width:auto;color:#555;font-size:11.5px}.kv.pl>b{flex:1;font-weight:600}.plf{padding:4px 0 12px}
.fm .kbox{display:grid}.fm .kbox>*{grid-area:1/1;min-width:0}.fm .kbox>.off{visibility:hidden}
.fm .resign-only .grow{flex:1}.fm .resign-only .grow textarea{flex:1;min-height:70px;resize:none}
.certbox{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.certbox>b{font-size:13px;color:var(--ink2)}
.certbox .rs{line-height:1.6}
/* 두 줄 목록(신청·서류) — 줄 사이 여유 */
.lst .rw{padding:11px 0;min-height:52px}
.fbrow+.fbrow{border-top:1px solid var(--line)}.fbic{font-size:21px;color:var(--ink3)}.fedit{padding:2px 0 14px}
.lst .rt{line-height:1.55}
.lst .rt .rs{margin-top:1px}
/* 세 칸 줄에서 입력칸이 카드 밖으로 나가지 않게 */
.fm .row2>*,.fm .row3>*{min-width:0}
.fm .row2 input:not([type=checkbox]):not([type=radio]),.fm .row3 input:not([type=checkbox]):not([type=radio]),.fm .row2 select,.fm .row3 select{width:100%;min-width:0}
/* 아이디어 지도 */
.tpls{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.tpl{display:flex;flex-direction:column;align-items:flex-start;gap:6px;border:1px solid var(--line2);border-radius:12px;background:#fff;padding:14px;cursor:pointer;text-align:left;font-family:inherit;color:var(--ink)}
.tpl:hover{border-color:var(--aub);box-shadow:inset 0 0 0 1px var(--aub)}
.tpl b{font-size:14.5px}
.tpl em{font-style:normal;font-size:12px;color:var(--ink2);line-height:1.45}
.tpv{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;background:var(--sel);color:var(--aub)}
.tpv-tree{background:#E4EFF9;color:#1264A3}.tpv-mind{background:#E3F4EC;color:#007A5A}.tpv-concept{background:#FFF3D6;color:#9A6200}
@media (max-width:900px){.tpls{grid-template-columns:1fr 1fr}}
.idea{flex:1;min-height:0;margin:-18px -24px -24px;display:flex;flex-direction:column;background:#FBFBFC}
.itb{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;padding:7px 10px;border-bottom:1px solid var(--line);background:#fff}
.ititle{font-size:15.5px;font-weight:700;border:1px solid transparent;border-radius:6px;padding:4px 8px;width:230px;background:transparent;color:var(--ink)}
.ititle:hover,.ititle:focus{border-color:var(--line2);outline:none;background:#fff}
.ititle.ro{width:auto}
.istat{font-size:12px;color:var(--ink3);white-space:nowrap}
.istat.err{color:var(--red)}
.isp{flex:1}
.igrp{display:flex;align-items:center;gap:1px;padding-left:6px;margin-left:2px;border-left:1px solid var(--line)}
.ib{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap}
.ib:hover{background:var(--soft)}
.ib:disabled{opacity:.32;cursor:default;background:transparent}
.ib.on{background:var(--sel);color:var(--aub)}
.ib i{font-size:16px}
.ic{width:18px;height:18px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line2);cursor:pointer;margin:0 2px;padding:0}
.ic:disabled{opacity:.35;cursor:default}
.ic.on{box-shadow:0 0 0 2px var(--ink)}
.ic-p{background:#5B2A5D}.ic-g{background:#007A5A}.ic-b{background:#1264A3}.ic-y{background:#E0A020}.ic-r{background:#C0224E}.ic-n{background:#8D8C93}
.ishare{display:flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--ink2);padding-left:8px;white-space:nowrap}
.icanvas{position:relative;flex:1;min-height:360px;overflow:hidden;background-color:#FBFBFC;background-image:radial-gradient(#D9D9DF 1px,transparent 1px);background-size:22px 22px}
#ideaSvg{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
#ideaSvg.panning{cursor:grabbing}
#ideaSvg .nd{cursor:pointer}
#ideaSvg .nd.on>rect,#ideaSvg .nd.on>ellipse{filter:drop-shadow(0 2px 6px rgba(63,14,64,.28))}
#ideaSvg .nd.lf>rect,#ideaSvg .nd.lf>ellipse{stroke-dasharray:5 3}
#ideaSvg .hdl{cursor:crosshair}
#ideaSvg .ed{cursor:pointer}
#temp{pointer-events:none}
.iedit{position:absolute;z-index:3;border:2px solid var(--aub);border-radius:8px;padding:6px 8px;font-family:inherit;text-align:center;resize:none;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.15);line-height:1.4;outline:none}
.ihint{position:absolute;left:12px;bottom:10px;font-size:12px;color:var(--ink2);background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:8px;padding:5px 10px;pointer-events:none;max-width:calc(100% - 24px)}
.ihint.flash{color:var(--aub);border-color:var(--aub);font-weight:600}
/* 관리 대장·보건증 */
.chips .chip .cn{font-weight:500;opacity:.7;margin-left:2px}
.feeg{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ldt tr.clk{cursor:pointer}
.ldt tr.clk:hover td{background:#FBF6FB}
.ldt tr.dim td{opacity:.55}
.ldt td a b{color:var(--ink)}
.ldt tr.grp td{background:#FBF8FB;border-top:1px solid var(--line2)}
.ldt tr.sumr td{background:#FAFAFB;border-top:1px solid var(--line2);font-weight:600}
.fm.renew,.fm.upl{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line2)}
.hlt td{padding:7px 8px}
.hlt .nm{display:flex;align-items:center;gap:7px}
.hform{display:flex;align-items:center;gap:6px}
.hform input[type=date]{height:30px;border:1px solid var(--line2);border-radius:7px;padding:0 8px;font-size:13px}
.hform label.sb{cursor:pointer}
.hform label.sb.on{background:var(--sel);color:var(--aub)}
/* 직원 관리·회사 정보 */
.stt td{padding:8px 8px}
.stt .nm{display:flex;align-items:center;gap:7px}
.stt .pill{margin-right:3px}
.ckls{display:flex;flex-direction:column}
.ckr{display:flex;align-items:flex-start;gap:9px;padding:9px 2px;border-top:1px solid #F0F0F1;cursor:pointer;font-size:13.5px}
.ckr:first-child{border-top:0}
.ckr input{width:16px;height:16px;margin-top:2px;flex:none}
.ckr span{display:flex;flex-direction:column;gap:2px;flex:1}
.ckr em{font-style:normal;font-size:12px;color:var(--ink2)}
.ckr.on b{color:var(--ink3);text-decoration:line-through}
.ckr .auto{font-style:normal;font-size:11px;color:var(--pur);background:var(--sel);border-radius:8px;padding:1px 7px;flex:none}
code.pw{font-family:Consolas,monospace;font-size:14px;background:#fff;border:1px solid #BFE3CF;border-radius:5px;padding:1px 6px;letter-spacing:1px}
.sealbox{display:flex;align-items:center;gap:14px}
.sealbox img{width:84px;height:84px;object-fit:contain;border:1px dashed var(--line2);border-radius:8px;background:#fff}
.sealpv{display:flex;align-items:center;gap:12px}.sealpv[hidden]{display:none}
.sealck{width:96px;height:96px;border:1px solid var(--line2);border-radius:8px;display:flex;align-items:center;justify-content:center;background:repeating-conic-gradient(#EEE 0 25%,#fff 0 50%) 0 0/14px 14px}.sealck img{max-width:88px;max-height:88px}
.sealmsg{line-height:1.6;flex:1}
.seal-txt{display:inline-flex;align-items:center;justify-content:center;text-align:center;width:84px;height:84px;border:3px solid #D23B3B;border-radius:6px;color:#D23B3B;font-weight:800;font-size:12px;line-height:1.3;transform:rotate(-5deg);flex:none;word-break:keep-all}
input.tin{height:30px;border:1px solid var(--line2);border-radius:6px;padding:0 7px;font-size:13px;width:150px;background:#fff}
input.tin[type=time]{width:120px}
.fm.cform{margin-top:10px;padding-top:12px;border-top:1px dashed var(--line2)}
/* 공유 계정 */
/* 공유 계정 — 한 계정 = 한 줄, [⋯]을 누르면 아래로 펼침 */
.vlist{padding:2px 16px 6px}
.vhead,.vr{display:grid;grid-template-columns:minmax(210px,1.3fr) minmax(190px,1fr) minmax(230px,1fr) 70px minmax(96px,.5fr) 200px;gap:12px;align-items:center}
.vhead{font-size:12px;color:var(--ink3);font-weight:600;padding:10px 0 8px;border-bottom:1px solid var(--line2)}
.vcard{border-bottom:1px solid #E9E9EC}
.vcard:last-of-type{border-bottom:0}
.vr{min-height:56px;padding:8px 0}
.vsv{display:flex;align-items:center;gap:10px;min-width:0}
.vsv .pill{flex:none;min-width:60px;justify-content:center}
.vt{display:flex;flex-direction:column;min-width:0;line-height:1.35}
.vt>.vtitle,.vt>b{font-size:14.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.vt .rs{font-size:11.5px}
.vc{display:flex;align-items:center;gap:5px;min-width:0}
.vin{flex:1;min-width:0;height:30px;border:1px solid var(--line2);border-radius:6px;padding:0 9px;background:#fff;font-family:Consolas,"D2Coding",monospace;font-size:13.5px;color:var(--ink)}
.vin:focus{outline:0;border-color:var(--aub);box-shadow:0 0 0 2px rgba(63,14,64,.08)}.vin::placeholder{color:var(--ink3);letter-spacing:.5px}
.vsave{margin:0}.vsave:disabled{opacity:.4;cursor:default}.vcard.dirty .vsave{background:var(--green-d);border-color:var(--green-d);color:#fff}
.vcard.dirty>.vr{background:#FFFAEB}
.vib{width:28px;height:28px;flex:none;padding:0;border:1px solid var(--line2);border-radius:6px;background:#fff;color:var(--ink2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.vib:hover{color:var(--ink);border-color:#BDBDBD}.vib i{font-size:15px}
.vwhen{display:flex;flex-direction:column;line-height:1.35;min-width:0;white-space:nowrap}.vwhen b{font-size:13px;font-weight:600}.vwhen .rs{font-size:11.5px;overflow:hidden;text-overflow:ellipsis}
.vact{display:flex;align-items:center;justify-content:flex-end;gap:6px}.vact .sb{margin:0}.vact form{display:inline-flex}
.vcard.open .vmore{background:var(--sel);color:var(--aub);border-color:#D9BFDA}
.vnote{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#8A5200;padding:0 0 10px 70px}
.vpanel{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:0 0 12px}
.vkv{display:flex;gap:12px;font-size:13px;align-items:baseline}
.vkv>span:first-child{width:96px;flex:none;color:var(--ink2);font-size:12.5px}
.vbtns{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.vbtns .sb{margin:0}.vbtns form{display:inline-flex}
.vrn{color:#B26B00;font-weight:700}.vended{margin-top:10px;font-size:13px}
@media (max-width:1100px){.vhead{display:none}.vr{grid-template-columns:1fr auto;gap:6px 12px}.vr>*{grid-column:1}.vact{grid-column:2;grid-row:1}}
.vppl{display:flex;flex-wrap:wrap;gap:6px 14px}
.vppl label{flex-direction:row!important;align-items:center;gap:5px!important;font-weight:500!important;color:var(--ink)!important;font-size:13px!important}
.vppl input{width:15px!important;height:15px!important}
.vupd,.vshf{padding-top:8px;border-top:1px dashed var(--line2)}
.vhist{font-size:12.5px;line-height:1.8;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.vhist b{display:block;margin-top:4px}
.vhist code{font-family:Consolas,monospace;background:var(--soft);padding:0 5px;border-radius:4px}
/* 급여 */
.card.psteps{display:flex;flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap}
.pst{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--ink3);font-size:13.5px}
.pst span{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--soft);border:1px solid var(--line2);font-size:12px}
.pst.done{color:var(--green-d)}.pst.done span{background:#E3F4EC;border-color:#BFE3CF}
.pst.now{color:var(--aub)}.pst.now span{background:var(--aub);color:#fff;border-color:var(--aub)}
.psteps>i{color:var(--ink3)}
.pact{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.pwarn{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#7A5200;background:#FFF9EA;border:1px solid #F3DDA8}
.pwarn i{margin-right:4px}.pwarn a{color:var(--blue);text-decoration:underline}
.chg{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-top:1px solid #F0F0F1}
.chgd{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--ink2)}
.chgd .net{color:var(--red-d);font-weight:700}
.prt td,.prt th{padding:7px 6px;font-size:12.5px;white-space:nowrap}
.prt .ptot td{background:#FAFAFB;font-weight:600}
.pman{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;padding:6px 0}
.pman label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--ink2);font-weight:600}
.pman .tin{width:120px}
input.tin.num{width:92px;text-align:right}
/* 자료실 */
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.rcard{padding:0!important;overflow:hidden;display:flex;flex-direction:column;color:inherit}
.rcard:hover{box-shadow:0 0 0 2px var(--aub)}
.rcard img,.rcard .rph{width:100%;height:130px;object-fit:cover;background:#F3E4F3;display:flex;align-items:center;justify-content:center;font-size:40px;color:var(--pur)}
.rbody{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px}
.rbody b{font-size:15px}
.rsteps{padding-left:22px;line-height:1.9;font-size:14px}
.ingt{display:flex;flex-direction:column;gap:6px}
.ingr{display:grid;grid-template-columns:2fr 1fr 1fr;gap:6px}
.ingr input{height:32px;border:1px solid var(--line2);border-radius:7px;padding:0 9px;font-size:13.5px}
.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.bcard{display:flex;flex-direction:column;gap:4px;color:inherit}
.bcard:hover{box-shadow:0 0 0 2px var(--aub)}
.bcard b{font-size:16px}
.bbody{font-size:13px;color:var(--ink2);line-height:1.6;margin-top:4px;white-space:pre-line}
.tline{display:flex;flex-direction:column}
.tli{display:flex;gap:18px;align-items:flex-start;padding:16px 4px;border-top:1px solid #DCDAE0;min-height:58px}  /* 줄마다 같은 여백·또렷한 구분선 */
.tli:first-child{border-top:0}
.tdt{width:84px;flex:none;font-weight:700;color:var(--aub);line-height:1.6}
.tli>div{flex:1;line-height:1.6}
.tli>div>div.rs{margin-top:4px;line-height:1.6}
@media print{.rail,.side,.top,.hh .btn{display:none!important}}
/* 서식 */
.fpeople{max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff}
.fpeople label{min-width:150px}
.vtitle{font-weight:700;font-size:15px;color:var(--ink);display:inline-flex;align-items:center;gap:4px}
.vtitle:hover{color:var(--blue);text-decoration:underline}
.vtitle i{font-size:14px;color:var(--ink3)}
.vurl{color:var(--blue);font-size:13px;word-break:break-all}
.vedit{padding-top:8px;border-top:1px dashed var(--line2)}
/* 내 문서함 탭 표시 */
.wtabs .chip .bdot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-left:3px}
.wtabs .chip .cn{font-size:11px;font-weight:700;background:var(--red);color:#fff;border-radius:8px;padding:0 6px;margin-left:3px;opacity:1}
.hbig{display:flex;flex-direction:column;gap:4px;padding:6px 2px}
.hbig b{font-size:22px}
.hbig span{font-size:13px;color:var(--ink2)}
/* 공유 계정 검색 — 제목 밑에 크게 */
.vsearch{display:flex;align-items:center;gap:10px;height:48px;padding:0 16px;border:2px solid var(--line2);border-radius:12px;background:#fff;max-width:720px}
.vsearch:focus-within{border-color:var(--aub);box-shadow:0 0 0 3px rgba(63,14,64,.08)}
.vsearch i{font-size:20px;color:var(--ink3)}
.vsearch input{flex:1;border:0;outline:0;font-size:16px;background:transparent;font-family:inherit}
.vcount{font-size:12.5px;color:var(--ink3);white-space:nowrap}
.vtools{display:flex;align-items:center;gap:10px;max-width:880px}.vtools .vsearch{flex:1;max-width:none;min-width:0}
.vtools .btn{height:48px;margin:0;padding:0 14px;border-radius:12px;font-size:14.5px;flex:none;width:132px;justify-content:center}/* 공유 계정·거래처 정보 — 글자 길이가 달라도 버튼·찾기 칸 크기 같게 */
/* 근무 화면 — 오른쪽 칸을 좁게(표가 주휴 칸까지 한눈에) */
.rp.rpw{width:264px}
.rpw .rph{padding:14px 14px 10px}
.rpw .rph b{font-size:15px}
.rpw .rpb{padding:12px 14px;gap:12px}
.rpw .box{font-size:12.5px;padding:10px 12px}
.rpw .cl2{font-size:12px;gap:8px;padding:7px 0;line-height:1.35}
.rpw .cl2 .d{width:36px;font-size:11.5px}
.rpw .foot2{padding:12px 14px;font-size:12px}
.ins td,.ins th{vertical-align:middle}.ins td.ctr,.ins th.ctr{text-align:center}.ins .pill{white-space:nowrap}
.ins td.insl{color:#A3123A;font-weight:600}
.insg{width:14px;display:inline-block}
.insb{display:flex;align-items:center;gap:8px;padding:10px 4px 2px;border-top:1px solid var(--line);margin-top:6px}
.fm .row2.row2w{grid-template-columns:1.4fr 1fr}.fm .row3.row3w{grid-template-columns:1fr 1.4fr 1fr}
.addrw{display:flex;gap:6px;align-items:stretch}.addrw input{flex:1;min-width:0}.addrw input.zipin{flex:0 0 92px;text-align:center;font-variant-numeric:tabular-nums}.addrw .btn{white-space:nowrap}
.mdl.zipm{width:520px;max-width:94vw;height:560px;max-height:90vh;display:flex;flex-direction:column}#zipBox{flex:1;min-height:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}
@media (max-width:700px){.fm .row2.row2w,.fm .row3.row3w{grid-template-columns:1fr}}
.fm input:disabled{background:#F4F4F6;color:var(--ink2);cursor:not-allowed}
.wsites .chip .cpn{font-size:11px;font-weight:700;color:#8A5200;background:#FDF1DC;border-radius:8px;padding:0 6px;margin-left:2px}
.wsites .chip.on .cpn{background:rgba(255,255,255,.2);color:#fff}
.wsites .chip .cplk{font-size:12px;opacity:.7;margin:0 0 0 2px}.wsites .chip .cpdot{width:7px;height:7px;border-radius:50%;background:#E0485F;display:inline-block;margin-left:4px}
.wsites .chip .cpn.cpe{color:var(--ink3);background:#F1F1F3}
/* 공유 > 사업자 정보 — 명함처럼 위에 상호, 아래 항목 칸(누르면 복사), 매장 전화 칸 */
.bzc{max-width:1080px;flex-shrink:0;background:var(--soft);border-radius:14px;padding:0 0 18px;overflow:hidden}
.bzc-top{display:flex;align-items:center;gap:16px;padding:22px 24px;background:linear-gradient(135deg,var(--aub),#6B2A6D);color:#fff}
.bzc-logo{width:54px;height:54px;border-radius:14px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:800;flex:none}
.bzc-id{flex:1;min-width:0}.bzc-name{font-size:26px;font-weight:800;letter-spacing:-.5px;line-height:1.25}
.bzc-sub{font-size:14.5px;opacity:.85;margin-top:4px}.bzc-sub b{font-weight:700;opacity:1;letter-spacing:.3px}.bzc-dot{margin:0 8px;opacity:.6}
.bzc-all{flex:none;display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:rgba(255,255,255,.12);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.bzc-all:hover{background:rgba(255,255,255,.22)}
.bzc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px 18px 0}
.bzc-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:84px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color .15s,background .15s}
.bzc-tile.wide{grid-column:1 / -1;min-height:72px}
.bzc-tile:not(:disabled):hover{border-color:#D9BFDA;background:#FDFAFD}.bzc-tile:disabled{cursor:default}
.bzc-tile.done{border-color:var(--green);background:#F2FBF6}
.bzc-l{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--ink3);font-weight:600}.bzc-l i{font-size:16px;color:var(--aub);opacity:.75}
.bzc-v{font-size:19px;font-weight:700;min-width:0;overflow-wrap:anywhere;line-height:1.35}
.bzc-c{position:absolute;top:12px;right:14px;display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--aub);opacity:0;transition:opacity .15s}
.bzc-tile:hover .bzc-c{opacity:1}.bzc-tile.done .bzc-c{opacity:1;color:var(--green-d)}
.bzc-sh{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--ink2);padding:20px 20px 8px}.bzc-sh i{color:var(--aub)}
.bzc-sites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px}
.bzc-site{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;font-size:14px}
.bzc-site b{font-size:15px}.bzc-site a{color:var(--blue);font-size:16px;font-weight:600;display:inline-flex;align-items:center;gap:4px}
.bzc-site .rs{display:inline-flex;align-items:center;gap:4px}
/* 사업자 서류 카드(사업자 정보·서식 라이브러리) — 미리보기 그림, 누르면 내려받기 */
.bzd{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.bzc-docs{padding:0 18px}
.bzd-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.bzd-pv{position:relative;display:flex;align-items:flex-start;justify-content:center;height:230px;background:#F4F2F5;overflow:hidden;border-bottom:1px solid var(--line)}
.bzd-pv img{width:100%;height:100%;object-fit:cover;object-position:top}
.bzd-pv>i{font-size:52px;color:var(--ink3);align-self:center}
.bzd-dl{position:absolute;inset:auto 0 0 0;display:flex;align-items:center;justify-content:center;gap:5px;padding:9px;background:rgba(58,20,60,.78);color:#fff;font-size:13.5px;font-weight:600;opacity:0;transition:opacity .15s}
.bzd-pv:hover .bzd-dl{opacity:1}
.bzd-t{display:flex;flex-direction:column;gap:2px;padding:10px 12px 4px;min-width:0}.bzd-t b{font-size:15px}.bzd-t .rs{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bzd-b{display:flex;gap:4px;padding:4px 8px 10px;flex-wrap:wrap}
.bzd-card .fedit{padding:4px 12px 12px}
.fbz{padding-bottom:16px}.fbz-g+.fbz-g{margin-top:18px}.fbz-h{font-size:15px;font-weight:700;margin:6px 0 10px}
@media (max-width:1100px){.bzc-grid,.bzc-sites{grid-template-columns:repeat(2,minmax(0,1fr))}.bzc-top{flex-wrap:wrap}}
@media (max-width:640px){.bzc-grid,.bzc-sites{grid-template-columns:1fr}}
/* 공유 > 거래처 정보 — 공유 계정처럼 한 줄에서 고치고 [저장] */
.ptn-head,.ptn-r{display:grid;grid-template-columns:118px minmax(120px,1fr) minmax(120px,1fr) 176px minmax(170px,1.2fr) minmax(160px,1.5fr) 96px 96px 30px;gap:10px;align-items:center}
.ptn-head{font-size:12px;color:var(--ink3);font-weight:600;padding:10px 0 8px;border-bottom:1px solid var(--line2)}
.ptn-r{min-height:52px;padding:8px 0}
.ptn-card.dirty>.ptn-r{background:#FFFAEB}
.ptn-in{font-family:inherit;font-size:13.5px;width:100%}
select.ptn-in{padding:0 4px}
.ptn-site{font-size:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
a.vib{text-decoration:none}
#pchips{margin:10px 0 0}
@media (max-width:1300px){.ptn-head{display:none}.ptn-r{grid-template-columns:1fr 1fr 1fr;gap:6px 10px}}
.sdiv{border:0;border-top:1px solid rgba(255,255,255,.22);margin:12px 6px 0}
/* 업무 매뉴얼 — 목록 줄을 누르면 그 자리에서 밑으로 펼침, 글 안 제목도 누르면 펼침(나무위키처럼) */
.mlist .mrow{border-bottom:1px solid var(--line)}.mlist .mrow:last-child{border-bottom:0}
.mlist .mhead{cursor:pointer;border-bottom:0;border-radius:6px}.mlist .mhead:hover b{color:var(--aub)}
.mlist .mhead:focus-visible{outline:2px solid var(--aub);outline-offset:2px}
.mtg{font-size:17px;color:var(--ink3);flex:none;transition:transform .15s}.mrow.closed .mtg{transform:rotate(-90deg)}
.mrow.closed>.mbody{display:none}.mrow:not(.closed) .mprev{display:none}
.mbody{padding:4px 8px 14px 38px}
.mfoot{display:flex;align-items:center;gap:14px;border-top:1px dashed var(--line);margin-top:10px;padding-top:8px}
.mfoot a{color:var(--blue);display:inline-flex;align-items:center;gap:3px}
.pbody{font-size:14.5px;line-height:1.85}
.pbody p{margin:0 0 10px}
.pbody .wintro{margin-bottom:6px}
.pbody .wtoc{display:inline-block;min-width:280px;max-width:100%;border:1px solid var(--line2);background:#FAFAFB;border-radius:8px;padding:10px 18px 12px;margin:4px 0 14px;font-size:14px}
.pbody .wtoc-h{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.pbody .wtoc-t{border:0;background:none;padding:0;font:inherit;font-size:14.5px;font-weight:700;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:4px;margin-right:auto}
.pbody .wtoc-t i{font-size:16px;color:var(--ink3);transition:transform .15s}.pbody .wtoc.closed .wtoc-t i{transform:rotate(-90deg)}
.pbody .wtoc.closed .wtoc-b,.pbody .wtoc.closed .wall-b{display:none}
.pbody .wall-b{display:flex;gap:10px}.pbody .wall{border:0;background:none;color:var(--blue);cursor:pointer;font:inherit;font-size:12.5px;padding:0}
.pbody .wtoc-b>.wtoc-l{margin-left:0}.pbody .wtoc-l{margin-left:20px}.pbody .wtoc-i{display:block;line-height:1.9}
.pbody .wtoc-i a{color:var(--blue)}.pbody .wtoc-i a:hover{text-decoration:underline}
.pbody .wsec{border-top:1px solid var(--line);margin-top:4px;scroll-margin-top:12px}
.pbody .wsec .wsec{border-top:1px dashed var(--line)}
.pbody .wh{display:flex;align-items:center;gap:4px;font-size:14.5px;font-weight:800;color:var(--ink);margin:0;padding:8px 0 6px;cursor:pointer;user-select:none;border-radius:6px;line-height:1.5}
.pbody h2.wh{font-size:16px;padding:10px 0 6px}
.pbody .wh:hover{color:var(--aub)}.pbody .wh:focus-visible{outline:2px solid var(--aub);outline-offset:2px}
.pbody .wtg{font-size:17px;color:var(--ink3);flex:none;transition:transform .15s;margin-right:2px}
.pbody .wsec.closed>.wh .wtg{transform:rotate(-90deg)}.pbody .wsec.closed>.wbody{display:none}
.pbody .wno{color:var(--aub);font-weight:800;margin-right:2px;flex:none}a.wno:hover{text-decoration:underline}
.pbody .wht{flex:1;min-width:0}
.pbody .wedit{display:none;margin-left:auto;padding-left:10px;font-size:12.5px;font-weight:500;color:var(--blue);flex:none}
.pbody.can-edit .wedit{display:inline}.pbody .wedit:hover{text-decoration:underline}
.pbody .wbody{padding:0 0 8px 23px}
.pbody .wl{margin:0 0 12px;padding-left:22px}.pbody .wl .wl{margin:2px 0 4px;color:var(--ink2)}.pbody .wl li{margin:2px 0}
.pbody ul.wl{list-style:disc}.pbody ul.wl ul.wl{list-style:circle}.pbody ul.wl ul.wl ul.wl{list-style:square}
.pbody .wq{background:#FFF8E6;border:1px solid #F3DDA8;border-radius:8px;padding:9px 12px;margin:8px 0 12px;font-size:13.5px;line-height:1.65}
.pbody .whr{border:0;border-top:1px solid var(--line);margin:10px 0}
.pbody .wfr{font-size:.75em;line-height:0}.pbody .wfr a{color:var(--blue)}
.pbody .wfn{border-top:1px solid var(--line);margin-top:16px;padding-top:8px;font-size:13px;color:var(--ink2)}.pbody .wfn a{color:var(--blue);margin-right:4px}
.pbody a.wlink{color:var(--blue);text-decoration:underline;text-underline-offset:2px}.pbody .wmiss{color:var(--ink3)}
/* 법령 찾기 — 큰 찾기 칸, 자주 찾는 말, 찾은 조문 조각 */
.lawsug{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lawsug .rs{margin-right:4px}
.lawhit{padding:10px 2px 12px;border-bottom:1px solid var(--line)}.lawhit:last-child{border-bottom:0}.lawhit .a{margin-bottom:4px}
.lawsn{display:grid;grid-template-columns:220px 1fr;gap:12px;padding:6px 8px;border-radius:8px;font-size:13.5px;line-height:1.6}
.lawsn:hover{background:#FAF5FA}.lawsn b{color:var(--aub);font-weight:700}.lawsn span{color:var(--ink2)}
mark{background:#FFE58A;color:inherit;border-radius:3px;padding:0 1px}
.pbody .wsec.wfocus>.wh{background:#FFF8E1;border-radius:6px}
.lawfirst{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.lawfc{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.lawfc:hover{border-color:#D9BFDA;background:#FDFAFD}.lawfc b{color:var(--aub);font-size:14.5px}.lawfc .rs{font-size:12px}
.lawfs{font-size:13px;color:var(--ink2);line-height:1.6}
.lawtopic{display:block;background:#FFF8E6;border:1px solid #F3DDA8;border-radius:10px;padding:9px 14px;font-size:14px}.lawtopic i{color:#C27C0E}
.lawweak{margin-top:8px;border-top:1px dashed var(--line2);padding-top:8px}.lawweak summary{cursor:pointer;color:var(--ink3);font-size:13px}
.pbody .wpre{font-family:"D2Coding","GulimChe","Consolas",monospace;font-size:12.5px;line-height:1.45;background:#FAFAFB;border:1px solid var(--line);border-radius:8px;padding:10px 12px;overflow-x:auto;white-space:pre;margin:6px 0 12px}
/* 법령 — 받아 온 조문(접혀 있음), 오른쪽 법령 정보 */
.lawcol{display:flex;flex-direction:column;gap:12px;min-width:0}
.lawtext{font-size:14px;line-height:1.8}.lawtext .wh{font-weight:700}.lawtext h2.wh{font-size:15px;font-weight:800}
.lawinfo .lawkv{display:grid;grid-template-columns:72px 1fr;gap:8px;font-size:13.5px;padding:3px 0}.lawinfo .lawkv>span:first-child{color:var(--ink3)}
/* 알림(왼쪽 막대) — 승인할 일 | 알림함 */
.alg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
/* 월말 확정(회계) 오른쪽 — 원래 스케줄·지금 기록, 출근·퇴근 1시간 당기기·미루기, 다른 직원이 채움 */
.cpo{display:flex;flex-direction:column;gap:6px;background:#FAFAFB;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.cpo>div{display:grid;grid-template-columns:80px 1fr;gap:8px;font-size:13.5px}.cpo span{color:var(--ink3)}
.cpt2{display:flex;align-items:flex-end;gap:8px}.cpt2 label{flex:1}
.cpq{display:flex;gap:4px;padding-bottom:2px;flex:none}.cpq button{height:34px;padding:0 8px;border:1px solid var(--line2);border-radius:7px;background:#fff;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}
.cpq button:hover{border-color:#D9BFDA;color:var(--aub)}
.cpf{border-top:1px dashed var(--line2);padding-top:10px}.cpf .row2{margin-bottom:6px}
/* 설정·권한 — 역할 × 화면 표 */
.prmwrap{overflow-x:auto}.prm th{font-size:12px;white-space:normal;min-width:92px;vertical-align:bottom}.prm td{vertical-align:middle}
.prmr{min-width:170px}.prmr .rs{font-size:11.5px;line-height:1.4;margin-top:2px}
.prm select.tin{width:100%;min-width:96px;font-size:12.5px}.prm td.prmchg{background:#FFF8E1}
/* 급여 요율 — 공공기관 값과 견주기 */
.rck .chd form{display:inline-flex}
.rckp{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#FFF6F8;border:1px solid #F4C9D4;border-radius:10px;padding:10px 14px;margin-top:10px;font-size:14px}
/* 급여 — 신협 대량이체 버튼·양식 올리기 */
.btn.cu{border-color:#B7D8C8;color:#00613F}.btn.cu:hover{background:#F2FBF6}
.cutpl{font-size:13px;color:var(--ink2);margin-top:-4px}.cutpl summary{cursor:pointer;padding:4px 2px}
.cutf{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 2px}.cutf .rs{flex-basis:100%}
/* 전체 직원 급여 — [검증]을 누르면 검증 칸과 결과가 보임 */
#ptab .vcol{display:none}#ptab.chk-on .vcol{display:table-cell}
.pchk-box .kv{display:grid;grid-template-columns:120px 1fr;gap:10px;font-size:13.5px;padding:3px 0}
#chkb.on{background:var(--sel);border-color:#D9BFDA;color:var(--aub)}
@media (max-width:1100px){.alg{grid-template-columns:1fr}}
/* 주별 스케줄 시간표 보기 — 일주일을 한 표로(시간 눈금 하나), 요일마다 안 겹치는 근무는 한 줄에 이어 붙임 */
.tlw{overflow-x:auto;padding-bottom:6px;flex-shrink:0;background:#fff;border:1px solid var(--line);border-radius:12px}
.tlg{display:grid;min-width:720px;padding:0 6px 8px 0;font-size:11px}
.tlh{grid-row:1;display:flex;align-items:center;justify-content:center;gap:4px;font-weight:700;font-size:13.5px;border-bottom:1px solid var(--line)}
.tlh .rs{font-size:11px;font-weight:500}.tlh.sat{color:#2F5FB3}.tlh.sun{color:#C0392B}
.tlbg{background:#FBFAFC;border-radius:6px}
.tlt{grid-column:1;color:var(--ink3);font-size:10.5px;text-align:right;padding-right:6px;line-height:1;border-top:1px solid #EEE}
.tll{border-top:1px dashed #E8E6EA;pointer-events:none}
.tlb{position:relative;z-index:1;margin:1px 2px;border:0;border-radius:6px;padding:3px 4px;display:flex;flex-direction:column;align-items:flex-start;gap:0;overflow:hidden;text-align:left;font:inherit;font-size:10.5px;line-height:1.25;cursor:pointer;min-width:0}
.tlb b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tlb span{white-space:nowrap}.tlb .tbk{opacity:.75}
.tlb.reg{background:#EEEDFE;color:#3C3489}.tlb.pt{background:#E1F5EE;color:#085041}
.tlb.on,.tlb:hover{box-shadow:0 0 0 2px var(--aub)}
.tlk{position:relative;z-index:2;margin:1px 4px;border-radius:4px;pointer-events:none;background:repeating-linear-gradient(45deg,rgba(0,0,0,0) 0 4px,rgba(0,0,0,.14) 4px 6px)}
/* 사업자 정보 — 사업자 고르기 칩, 서류 크게 보기 창 */
.bzsel{margin-bottom:12px}
.dvw{position:fixed;inset:0;z-index:60;background:rgba(20,10,25,.55);display:flex;align-items:center;justify-content:center;padding:24px}
.dvw[hidden]{display:none}
.dvb{width:min(920px,100%);max-height:100%;display:flex;flex-direction:column;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.3)}
.dvh{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.dvh b{font-size:16px}
.dvp{overflow:auto;padding:14px;background:#F1EFF2;display:flex;flex-direction:column;gap:12px;align-items:center}
.dvp img{width:100%;max-width:860px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.inpx{border:0;background:none;color:var(--ink3);cursor:pointer;padding:0 2px;font-size:15px;display:inline-flex;align-items:center}.inpx:hover{color:var(--ink)}
.telpop{position:absolute;z-index:70;width:220px;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.06);padding:12px 14px}.telpop b{display:block;font-size:20px;letter-spacing:.5px;margin-top:2px}
/* 거래처 정보 — 평소엔 글자만(보기), 줄을 누르면 그 줄만 입력칸으로(고치기) */
.ptn-card{cursor:pointer}.ptn-card.edit{cursor:default}
.ptn-card:not(.edit) .ptn-in{border-color:transparent!important;background:transparent!important;box-shadow:none!important;pointer-events:none;padding-left:0;appearance:none;-webkit-appearance:none;text-overflow:ellipsis}
.ptn-card:not(.edit) [data-f=name]{font-weight:700;font-size:14.5px}
.ptn-card:not(.edit) select.ptn-in{display:inline-block;width:auto;max-width:100%;height:24px;padding:0 9px;border-radius:999px;background:#F1EFF2!important;font-size:12px;color:var(--ink2)}
.ptn-card:not(.edit) .ptn-in::placeholder{color:#C9C6CC}
.ptn-card:not(.edit) .ptn-ed{visibility:hidden}
.ptn-card:not(.edit):hover>.ptn-r{background:#FBF7FB}
.ptn-card.edit>.ptn-r{background:#FFFDF6;box-shadow:inset 3px 0 0 var(--aub)}
.ptn-ed{display:flex;align-items:center;gap:4px}
/* 캘린더 — 한 줄 빠른 입력, 날짜 칸 작은 입력창, 끌어 옮기기, 끝낸 할 일 줄 긋기 */
.qadd{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line2);border-radius:10px;padding:6px 8px 6px 12px;margin-bottom:8px;flex-shrink:0}
.qadd>i{color:#8A5200}.qadd input{flex:1;border:0;outline:0;font:inherit;font-size:14px;min-width:0}
.qaPv{font-size:12.5px;color:var(--aub);white-space:nowrap;font-weight:600}
.cpop{position:absolute;z-index:65;width:270px;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.06);padding:10px 12px}
.cph{display:flex;align-items:center}.cph b{font-size:13.5px}.cph .x{margin-left:auto;border:0;background:none;font-size:18px;color:var(--ink3);cursor:pointer}
.cpop .cpt{width:100%;height:34px;border:1px solid var(--aub);border-radius:8px;padding:0 9px;font:inherit;font-size:14px;margin:6px 0;outline:0}
.cpr{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.cpl{border:1px solid var(--line2);background:#fff;border-radius:999px;padding:2px 9px;font:inherit;font-size:12px;cursor:pointer;color:var(--ink2)}
.cpl.on{background:#F3E4F3;border-color:#D7BFDD;color:var(--aub);font-weight:600}
.cptm{height:26px;border:1px solid var(--line2);border-radius:6px;font:inherit;font-size:12px;padding:0 4px}
.cpm{margin-left:auto;font-size:12px;color:var(--ink3);cursor:pointer;text-decoration:underline}
.ce.dn{text-decoration:line-through;opacity:.5}
.ce[draggable=true]{cursor:grab}.ce.drg{opacity:.4}
.cc.dov{background:#F3E4F3;box-shadow:inset 0 0 0 2px #D7BFDD}
/* 브랜드·연혁 — 연혁/브랜드 고르기 */
.btabs{margin-bottom:10px}
/* 연락망 — 입사 N주년(세 달 전부터 D-N, 그날은 축하) */
.an{display:inline-flex;align-items:center;gap:2px;margin-left:6px;font-size:11px;font-weight:700;color:#8A5200;background:#FFF3D6;border-radius:9px;padding:0 6px;height:17px;vertical-align:1px}
.an.today{color:#fff;background:linear-gradient(90deg,#F2A93B,#E0689E)}
/* 표 정렬 — 머리 칸 누르기 */
table.sortable th.sth{cursor:pointer;user-select:none;white-space:nowrap}
table.sortable th.sth:hover{color:var(--aub)}
table.sortable th.sth::after{content:' ↕';opacity:.3;font-size:11px}
table.sortable th.sth[data-dir=asc]::after{content:' ▲';opacity:.9}
table.sortable th.sth[data-dir=desc]::after{content:' ▼';opacity:.9}

/* 주별 스케줄 시간표 — 사람마다 다른 색 */
.tlb.p0{background:#E6EEFB;color:#1F4E9A}.tlb.p1{background:#E3F4EC;color:#0E6242}.tlb.p2{background:#FDEBD8;color:#8A4A0B}.tlb.p3{background:#F3E4F3;color:#6B1F6D}.tlb.p4{background:#FDE4EA;color:#9A1F42}.tlb.p5{background:#E0F2F6;color:#0B5566}.tlb.p6{background:#EFEBD8;color:#5F5212}.tlb.p7{background:#E8E6FB;color:#3B2F8F}.tlb.p8{background:#FFF3C8;color:#7A5A00}.tlb.p9{background:#E4F0DC;color:#355F1A}.tlb.p10{background:#F6E6DC;color:#7A3A1B}.tlb.p11{background:#E9EDF1;color:#384553}
/* 칸 목록 정렬 — 머리 칸 누르기 */
.lsth{cursor:pointer;user-select:none;white-space:nowrap}.lsth:hover{color:var(--aub)}
.lsth::after{content:' ↕';opacity:.3;font-size:11px}
.lsth[data-dir=asc]::after{content:' ▲';opacity:.9}.lsth[data-dir=desc]::after{content:' ▼';opacity:.9}
/* 연차 신청 달력 — 날짜 눌러 고르기 */
.lp{border:1px solid var(--line,#e5e5e5);border-radius:10px;padding:10px}
.lph{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.lph b{font-size:14px}
.lpg{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.lpw{font-size:11px;color:var(--mut,#888);padding:2px 0}.lpw.su,.lpd.su{color:#C0392B}.lpw.sa,.lpd.sa{color:#2F6FB5}
.lpd{border:0;background:none;cursor:pointer;width:32px;height:32px;margin:0 auto;border-radius:50%;font:inherit;font-size:13px;color:inherit}
.lpd:hover{background:rgba(0,0,0,.06)}.lpd.td{box-shadow:inset 0 0 0 1.5px var(--aub,#6b4eff)}
.lpd.on{background:var(--aub,#6b4eff);color:#fff;font-weight:700}
.lpb{display:flex;gap:6px;justify-content:flex-end;margin-top:8px}.lpb .btn{margin:0}
.lpr{margin-top:8px;padding:8px 10px;border-radius:8px;background:rgba(107,78,255,.08);font-size:13px;line-height:1.6}.lpr.bad{background:rgba(192,57,43,.08);color:#C0392B}
/* 내 연차 막대 — 쓸 수 있음(연한 보라, 왼쪽)·사용(진한 보라, 오른쪽) — 올해 연차 흐름의 사용 색과 같게 */
.bar.lvc{background:#6E3470}.bar.lvc span{background:#E9DDEA}

/* 계정 관리 — 고른 직원 줄 */
#acct tr.sel td{background:#FBF6FB}
/* 계정 관리 — 체크리스트 접고 펴기(끝낸 것은 접혀 있음) */
.ckcard>summary{cursor:pointer;list-style:none;user-select:none}.ckcard>summary::-webkit-details-marker{display:none}
.ckcard>summary .ckcv{color:var(--ink3);transition:transform .15s;margin-right:2px}.ckcard:not([open])>summary .ckcv{transform:rotate(-90deg)}
.ckcard:not([open])>summary{margin-bottom:0}
/* 직원 관리 — 맡은 사업장·기한 담당(한 줄에 하나씩, 넉넉하게) */
.fm.scp{gap:18px;padding-top:4px}
.scs>b{font-size:14px}.scs>p{margin:4px 0 8px;font-size:12.5px;color:var(--ink2);line-height:1.5}
.scl{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.scl label{flex-direction:row!important;align-items:center;gap:10px!important;padding:11px 12px;font-size:14px!important;font-weight:500!important;color:var(--ink)!important;cursor:pointer}
.scl label+label{border-top:1px solid var(--line)}.scl label:hover{background:#FAF7FA}
.scl input{width:17px;height:17px;flex:0 0 auto}
/* 공유 > 사업자 정보 — 사업자등록증 원본 배치(왼쪽) + 연락처·계좌·인허가(오른쪽) */
.bzc2{max-width:1240px;flex-shrink:0}
.bzr{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}
.cert{background:#fff;border:1px solid #DCD6CC;border-radius:6px;padding:34px 40px 26px;box-shadow:0 10px 28px rgba(40,20,40,.06)}
.cert-t{text-align:center;font-size:28px;font-weight:800;letter-spacing:8px;color:#222}
.cert-k{text-align:center;font-size:15px;color:#444;margin:4px 0 22px}
.cert-no{display:flex;align-items:baseline;gap:14px;padding:12px 0 14px;border-top:2px solid #333;border-bottom:1px solid #CFC9BF;margin-bottom:6px}
.cert-no>span{font-size:15px;font-weight:700;color:#333;letter-spacing:2px}
.cert-no b{font-size:24px;letter-spacing:1px;font-variant-numeric:tabular-nums}
.cert-rows{display:grid;grid-template-columns:132px minmax(0,1fr);margin:0}
.cert-rows dt{padding:13px 16px 13px 0;font-size:14.5px;font-weight:700;color:#333;letter-spacing:1px;border-bottom:1px solid #EEEAE3;position:relative}
.cert-rows dt::after{content:':';position:absolute;right:4px;top:13px;font-weight:400;color:#777}
.cert-rows dd{margin:0;padding:11px 0 11px 14px;font-size:17px;font-weight:600;border-bottom:1px solid #EEEAE3;line-height:1.5;min-width:0;overflow-wrap:anywhere}
.cert-2{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}
.cert-sub{display:inline-block;font-size:13px;font-weight:700;color:#666;margin-right:8px}
.cert-2 .cert-sub{margin-left:auto}
.cert-kind{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px}
.cert-kind>div{display:flex;align-items:flex-start}.cert-kind .cert-sub{flex:none;padding-top:3px}
.cert-f{display:flex;align-items:center;gap:12px;margin-top:18px}
.cv{cursor:copy;border-radius:5px;padding:1px 4px;margin:-1px -4px;transition:background .12s}
.cv:hover{background:#F6EEF6;box-shadow:inset 0 0 0 1px #E3CFE4}.cv.done{background:#EAF7EF;box-shadow:inset 0 0 0 1px #A9DDBF}
.cn{color:var(--ink3);font-weight:400}
.bzk-col{display:flex;flex-direction:column;gap:12px}
.bzk{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px 6px}
.bzk-h{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--ink2);padding-bottom:8px;border-bottom:1px solid var(--line)}.bzk-h i{color:var(--aub);font-size:17px}
.bzk-r{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-bottom:1px solid #F1EFF2}.bzk-r:last-child{border-bottom:0}
.bzk-r>span{font-size:12px;color:var(--ink3);line-height:1.4}
.bzk-r>b{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;align-self:flex-start}
.bzc2 .bzc-sh{padding:24px 2px 10px}
@media (max-width:1100px){.bzr{grid-template-columns:1fr}}
@media (max-width:640px){.cert{padding:24px 18px}.cert-rows{grid-template-columns:104px minmax(0,1fr)}.cert-kind{grid-template-columns:1fr}}
/* 계약 관리 — 줄을 누르면 팝업(iframe)으로 상세 */
.lpop{position:fixed;inset:0;z-index:80;background:rgba(20,10,22,.45);display:flex;align-items:center;justify-content:center;padding:24px}
.lpop[hidden]{display:none}
.lpop-b{width:min(1180px,100%);height:min(88vh,980px);background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.lpop-b iframe{width:100%;height:100%;border:0;display:block}
body.popb{background:#fff;overflow:auto}body.popb>.main{padding:18px 22px 24px;overflow:visible}
/* 거래처 정보·공유 계정 — 직원 명부 크기(검색칸은 제목 줄 오른쪽에 작게, 한 줄 약 40px) */
.hh.cmp{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;row-gap:4px}
.hh.cmp>div:first-child{display:contents}
.hh.cmp .ttl{grid-column:1;grid-row:1}.hh.cmp .sub{grid-column:1 / -1;grid-row:2}
.hh.cmp .vtools{grid-column:2;grid-row:1;max-width:none;width:auto;gap:6px}
.hh.cmp .vsearch{width:300px;flex:none;height:34px;padding:0 10px;border-width:1px;border-radius:8px;gap:6px}
.hh.cmp .vsearch i{font-size:16px}.hh.cmp .vsearch input{font-size:13.5px}.hh.cmp .vcount{font-size:12px}
.hh.cmp .vtools .btn{height:34px;padding:0 12px;font-size:13px;margin:0}
.vlist.cmp{padding:0 16px 4px}
.vlist.cmp .vhead,.vlist.cmp .ptn-head{padding:8px 0 6px;font-size:12px}
.vlist.cmp .vr,.vlist.cmp .ptn-r{min-height:38px;padding:3px 0;gap:10px}
.vlist.cmp .ptn-head,.vlist.cmp .ptn-r{grid-template-columns:110px minmax(120px,1fr) minmax(110px,1fr) 170px minmax(130px,1fr) minmax(130px,1.4fr) 96px 140px 30px}
.vlist.cmp .vin{height:26px;font-size:12.5px}.vlist.cmp .vib{width:26px;height:26px}.vlist.cmp .vib i{font-size:14px}
.vlist.cmp .vr .sb,.vlist.cmp .ptn-r .sb{height:26px;font-size:12px}
.vlist.cmp .vsv{gap:8px}.vlist.cmp .vsv .pill{min-width:50px;font-size:11px;padding:1px 8px}
.vlist.cmp .vt{flex-direction:row;align-items:baseline;gap:6px}
.vlist.cmp .vt>.vtitle,.vlist.cmp .vt>b{font-size:13.5px}
.vlist.cmp .vt .rs{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vlist.cmp .vwhen{flex-direction:row;align-items:baseline;gap:6px}.vlist.cmp .vwhen b{font-size:12.5px;font-weight:500}
.vlist.cmp .ptn-card:not(.edit) [data-f=name]{font-size:13.5px}
.vlist.cmp .ptn-card:not(.edit) select.ptn-in{height:22px;font-size:11.5px}
.vlist.cmp .ptn-in{font-size:13px}
.vlist.cmp .ptn-r>div:first-child{display:flex;align-items:center;gap:6px;min-width:0}.vlist.cmp .ptn-site{margin:0}
@media (max-width:1300px){.vlist.cmp .ptn-head{display:none}.vlist.cmp .ptn-r{grid-template-columns:1fr 1fr 1fr;gap:6px 10px}}
@media (max-width:900px){.hh.cmp{grid-template-columns:1fr}.hh.cmp .vtools{grid-column:1;grid-row:3}}
/* 필터 한 줄(드롭다운) — 매출·분석·판매납품과 같은 모양 */
.fbar1{display:flex;align-items:center;gap:14px;padding:9px 14px;flex-wrap:wrap;background:var(--soft);border-radius:12px;flex-shrink:0}
.fbar1 label{display:flex;flex-direction:row;align-items:center;gap:7px;font-size:12.5px;color:var(--ink2);font-weight:700}
.fbar1 select{height:30px;border:1px solid var(--line2);border-radius:7px;background:#fff;padding:0 8px;font-size:13px;font-weight:600;color:var(--ink);min-width:110px;max-width:220px;font-family:inherit}
.fbar1 select:focus{outline:2px solid #D9C0DA;border-color:var(--aub)}
.fbar1 .fcnt{font-size:12.5px;color:var(--ink2);font-variant-numeric:tabular-nums;margin-left:auto}
.fbar1 .fclr{display:inline-flex;align-items:center;gap:3px;font-size:12.5px;color:var(--aub);font-weight:600}
/* 사업자 정보 — 서류 묶음 제목(사업자 등록증·영업신고증·통장사본·법인서류·기타서류) */
.bzg-h{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--ink);margin:14px 2px 8px;padding-left:9px;border-left:3px solid var(--aub)}
.bzg-h .rs{font-weight:500}
/* 옆 메뉴 — 위 'Cozyfield Works ▾'로 기본 메뉴 / 관리자 메뉴 바꾸기 */
.wsb{width:100%;border:0;background:none;font:inherit;cursor:pointer;text-align:left;border-radius:8px}.wsb:hover{background:rgba(255,255,255,.08)}
.side{position:relative}
.wsm{position:absolute;left:8px;right:8px;top:50px;z-index:30;background:#2A0B2C;border:1px solid rgba(255,255,255,.14);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.38);padding:6px}
.wsm[hidden]{display:none}
.wsm-h{font-size:11.5px;font-weight:600;color:rgba(255,255,255,.5);padding:6px 10px 4px;letter-spacing:.3px}
.wsm button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;background:none;border-radius:9px;font:inherit;color:#fff;cursor:pointer;text-align:left}
.wsm button:hover{background:rgba(255,255,255,.08)}.wsm button.on{background:rgba(255,255,255,.13)}
.wsm-ic{width:32px;height:32px;flex:none;border-radius:8px;background:rgba(255,255,255,.12);display:inline-flex;align-items:center;justify-content:center;font-size:17px}

.wsm-t{display:flex;flex-direction:column;min-width:0;line-height:1.3}.wsm-t b{font-size:14px;font-weight:700}.wsm-t em{font-style:normal;font-size:11.5px;color:rgba(255,255,255,.6)}
.wsm .ck{margin-left:auto;color:#fff;visibility:hidden;font-size:16px}.wsm button.on .ck{visibility:visible}
.wsb.open{background:rgba(255,255,255,.1)}.wsb i{transition:transform .15s}.wsb.open i{transform:rotate(180deg)}
.side[data-mode=admin] .sbm:not([data-mode=admin]),.side[data-mode=pos] .sbm:not([data-mode=pos]),.side[data-mode=sales] .sbm:not([data-mode=sales]),.side:not([data-mode=admin]):not([data-mode=pos]):not([data-mode=sales]) .sbm:not([data-mode=main]){display:none}
/* 사업자 정보 — 서류 묶음 가로 한 줄(대표 그림 한 장씩), 누르면 그 묶음 서류가 오른쪽으로 */
.bzs{display:flex;align-items:flex-start;gap:12px;overflow-x:auto;padding:2px 2px 10px}
.bzg{display:flex;align-items:flex-start;gap:10px;flex:none}
.bzg .bzd-card{width:190px;flex:none}
.bzg-rep{cursor:pointer;transition:box-shadow .12s,border-color .12s}.bzg:not(.empty) .bzg-rep:hover{border-color:#D9BFDA;box-shadow:0 4px 14px rgba(63,14,64,.08)}
.bzg.empty .bzg-rep{cursor:default;background:#FCFCFD;border-style:dashed}
.bzg-lb{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);font-size:14px}.bzg-lb .rs{font-size:12px}
.bzg-cv{margin-left:auto;color:var(--ink3);transition:transform .15s}.bzg.open .bzg-cv{transform:rotate(180deg);color:var(--aub)}
.bzg.open .bzg-rep{border-color:var(--aub);box-shadow:0 0 0 1px var(--aub) inset}
.bzg-none{flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--ink3);background:#F7F7F8}.bzg-none i{font-size:34px}.bzg-none span{font-size:13px;font-weight:600}
.bzg-more{display:none;gap:10px;padding:0 4px 0 10px;border-left:2px solid #E3CFE4}
.bzg.open .bzg-more{display:flex}
.bzg-rep .bzd-pv,.bzg-it .bzd-pv{height:210px}
.bzg .bzd-t b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bzg .bzd-t{min-width:0}
/* 브랜드·연혁 — 설립 말고는 굵게 안 함 */
.tli .tln{font-weight:400;color:var(--ink)}
/* 법령 세부 — 이 법에서 찾기 · 모두 펼치기/접기 (위에 붙어 있음) */
.card.lawbar{display:flex;flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap;position:sticky;top:0;z-index:5;padding:10px 12px}
.lawq{flex:1;min-width:260px;display:flex;align-items:center;gap:6px;height:36px;padding:0 6px 0 10px;border:1px solid var(--line2);border-radius:8px;background:#fff}
.lawq:focus-within{border-color:var(--aub);box-shadow:0 0 0 2px rgba(63,14,64,.08)}
.lawq i{color:var(--ink3)}.lawq input{flex:1;border:0;outline:0;font:inherit;font-size:14px;min-width:0;background:transparent}
.lawcnt{font-size:12.5px;color:var(--ink2);font-variant-numeric:tabular-nums;white-space:nowrap}
.lawcol mark.cur{background:#FFB547;box-shadow:0 0 0 2px #FFB547}
/* 사업용 계좌 — 은행 · 계좌번호 · 예금주 한 줄, 용도는 밑에 작게 */
.bzk-acc>b .bk{font-weight:700}.bzk-acc>b .hd{font-weight:500;color:var(--ink2)}
/* 승인할 일 — 줄마다 넉넉하게, 사이에 선 */
.apv{padding:6px 18px}
.apv .rw{padding:15px 4px;min-height:64px;border-bottom:1px solid var(--line);gap:12px}.apv .rw:last-of-type{border-bottom:0}
.apv .rw .rt .a{font-size:14.5px;margin-bottom:3px}
/* 위 머리 — 회사 이름(작게) + 지금 작업 공간 */
.wsb-n{display:flex;flex-direction:column;line-height:1.15;min-width:0}.wsb-n small{font-size:11px;font-weight:600;color:rgba(255,255,255,.6);letter-spacing:.2px}.wsb-n b{font-size:17px;font-weight:800}
/* 브랜드·연혁 글 — 위키 모양 대신 깔끔한 소개(목차·번호·접기 없음, 매장마다 구분) */
.pbody.plain .wsec{padding:18px 0;border-top:1px solid #E4E1E6}.pbody.plain>.wsec:first-of-type{border-top:0;padding-top:4px}
.pbody.plain .wsec>.wh{cursor:default;pointer-events:none;border:0;padding:0;margin:0 0 10px}
.pbody.plain .wsec>.wh i,.pbody.plain .wsec>.wh .wno{display:none}
.pbody.plain .wsec>.wh .wht{font-size:18px;font-weight:800;color:var(--ink)}
.pbody.plain .wsec.closed>.wbody{display:block}
.pbody.plain p{line-height:1.8;color:#2D2A2E}
.pbody.plain blockquote,.pbody.plain .wq{border:0;border-left:3px solid var(--aub);background:#F8F3F8;border-radius:0 8px 8px 0;padding:10px 14px;font-weight:600;color:var(--aub)}
.pbody.plain .wbody{padding-left:0;margin-left:0;border-left:0}
/* 왼쪽 아이콘 메뉴 — 업무 공간 / 경영 관리 */
.rg{display:flex;flex-direction:column;align-items:center}
.rg[data-ws]{display:none}
html:not([data-ws]) .rg[data-ws=main],html[data-ws=main] .rg[data-ws=main],html[data-ws=admin] .rg[data-ws=admin],html[data-ws=pos] .rg[data-ws=pos],html[data-ws=sales] .rg[data-ws=sales]{display:flex}
/* 경영 관리 → 한눈에 보기 */
.adk{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;flex-shrink:0}
.adk-t{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:var(--soft);border-radius:12px;color:var(--ink);border:1px solid transparent}
a.adk-t:hover{border-color:#D9BFDA;background:#FBF7FB}
.adk-t span{font-size:12.5px;color:var(--ink2);font-weight:600}.adk-t b{font-size:26px;font-weight:800;letter-spacing:-.5px}.adk-t b small{font-size:13px;font-weight:600;color:var(--ink2);margin-left:2px}
.adk-t b.sm{font-size:20px;padding:4px 0 2px}.adk-t em{font-style:normal;font-size:12px;color:var(--ink3)}
.adk-t.hot b{color:#B4501C}
.adg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.adp{padding:10px 0;border-bottom:1px solid var(--line)}.adp:last-child{border-bottom:0}
.adp-h{display:flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;margin-bottom:6px}
.adp-l{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:13.5px}.adp-l a{color:var(--blue)}
@media (max-width:1100px){.adg{grid-template-columns:1fr}}
/* 권한 관리 → 사업자 정보 — 평소엔 글, 줄을 누르면 밑에 고치기 칸 */
.sitet tr.srow{cursor:pointer}.sitet tr.srow:hover td{background:#FBF7FB}
.sitet tr.srow.on td{background:#F7EFF7}.sitet tr.srow.on td:first-child{box-shadow:inset 3px 0 0 var(--aub)}
.sitet tr.sed td{background:#FFFDF6;padding:14px 16px}.sitet tr.sed .fm{max-width:980px}
/* 홈 처리할 일 — 줄마다 여백·구분선(공지·이슈와 같은 간격) */
.hbox .rw{padding:9px 0;min-height:48px;border-bottom:1px solid var(--line)}.hbox .rw:last-of-type{border-bottom:0}
.hbox .rw .rt .a{margin-bottom:2px}
/* 근로계약 갱신 */
.rnf{padding:6px 0 14px;border-bottom:1px solid var(--line);margin-bottom:10px}
.rnemp{display:flex;flex-wrap:wrap;gap:6px 18px;max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff}
.rnemp label{flex-direction:row!important;align-items:center;gap:6px!important;font-weight:500!important;font-size:13.5px!important;min-width:220px}
/* 시험용 Acre 표시(settings MH_INSTANCE=test) */
.testtag{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:11px;background:#E8912D;color:#fff;font-size:12px;font-weight:700;letter-spacing:-.2px;white-space:nowrap}
.login .testtag{margin-left:4px}
/* 연차 › 승인 대기 — 줄마다 위아래 여백(두 줄짜리 글이 붙어 보이지 않게) */
.lvq .rw{padding:12px 2px;min-height:60px}
.lvq .rw .rt .a{margin-bottom:3px}
