:root{--prm: #0b7a80;--prm2: #08656a;--prmbg: #e6fafa;--bg: #f5f7f9;--ink: #191f28;--dim: #6b7684;--line: #e8ecf0;--red: #c83232;--side: 224px;--st-on: #0b7a80;--st-on-bg: #e6fafa;--st-on-line: #6db0b3;--st-wait: #8f5c14;--st-wait-bg: #faf2e4;--st-wait-line: #ddb26e;--st-done: #3f7a57;--st-done-bg: #ebf4ee;--st-done-line: #b5d2bf;--st-bad: #b04545;--st-bad-bg: #f9eded;--st-bad-line: #dea2a2;--font: Pretendard, "Malgun Gothic", sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font:13px/20px var(--font);color:var(--ink);background:var(--bg)}#admin-root{display:flex;min-width:1180px;min-height:100vh}a{color:var(--prm)}.side{width:var(--side);flex:none;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;height:100vh;position:sticky;top:0}.side .lg{padding:18px 18px 12px;font:800 17px var(--font);color:var(--prm);display:flex;align-items:center;gap:8px}.logo-i{width:26px;height:26px;border-radius:7px;background:var(--prm);color:#fff;display:grid;place-items:center;font:800 12px var(--font);font-style:normal}.side .pt{margin:0 12px 10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f9fafc;font-size:12px;line-height:1.45;color:var(--dim)}.side .pt b{display:block;font-size:13px;color:var(--ink);margin-bottom:4px}.side .g{padding:12px 18px 4px;font:700 10.5px var(--font);color:#8b95a7;letter-spacing:.4px}.side a{display:flex;align-items:center;gap:9px;padding:8px 18px;min-height:36px;color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;cursor:pointer}.side a:hover{background:#f4f6fa}.side a.on{background:var(--prmbg);color:var(--prm);border-right:3px solid var(--prm);font-weight:800}.side a .n{margin-left:auto;min-width:18px;height:18px;border-radius:9px;background:var(--red);color:#fff;font:700 10.5px/18px var(--font);text-align:center;padding:0 5px}.side a svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.side .ft{margin-top:auto;padding:12px 18px;font-size:11px;color:var(--dim);border-top:1px solid var(--line)}.side .ft button{margin-top:6px}.view{flex:1;min-width:0;display:flex;flex-direction:column;min-height:100vh}.ah{background:#fff;border-bottom:1px solid var(--line);min-height:56px;padding:0 24px;display:flex;align-items:center;gap:14px;position:sticky;top:0;z-index:2}.ah .t{font:800 17px var(--font)}.ah .s{font-size:12px;color:var(--dim)}.sp{flex:1}.body{flex:1;padding:16px 24px 32px}.btn{font:700 13px var(--font);min-height:36px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}.btn:hover{background:#f4f6fa}.btn:disabled{opacity:.55;cursor:default}.btn.p{background:var(--prm);border-color:var(--prm);color:#fff}.btn.p:hover{background:var(--prm2)}.btn.bad{color:var(--st-bad);border-color:var(--st-bad-line)}.btn.sm{min-height:30px;padding:0 10px;font-size:12px;border-radius:8px}input,select,textarea{font:13px var(--font);height:36px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#fff;color:var(--ink)}textarea{height:auto;padding:8px 12px;resize:vertical;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--prmbg);border-color:var(--prm)}.filter{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;margin-bottom:12px}.seg{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.seg button{border:0;background:#fff;font:600 12.5px var(--font);padding:0 12px;height:34px;color:var(--dim);cursor:pointer;border-right:1px solid var(--line)}.seg button:last-child{border-right:0}.seg button.on{background:var(--prmbg);color:var(--prm);font-weight:800}.seg b{margin-left:4px}.split{display:grid;grid-template-columns:44% minmax(0,1fr);gap:12px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.tbl{width:100%;border-collapse:collapse;font-size:12.5px}.tbl th{background:#fafbfc;color:var(--dim);font-weight:700;font-size:11.5px;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl td{padding:10px;border-bottom:1px solid #f0f2f5;white-space:nowrap}.tbl td.wrap{white-space:normal;word-break:keep-all}.tbl tr:last-child td{border-bottom:0}.tbl.pick tbody tr{cursor:pointer}.tbl.pick tbody tr:hover td{background:#f9fafc}.tbl tbody tr.on td{background:var(--prmbg)}.tbl .r{text-align:right}.empty{padding:28px 16px;text-align:center;color:var(--dim)}.err{padding:12px 16px;color:var(--st-bad);background:var(--st-bad-bg);border-radius:10px;margin-bottom:12px}.pill{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font:700 11.5px var(--font);border:1px solid;white-space:nowrap}.pill.on{color:var(--st-on);background:var(--st-on-bg);border-color:var(--st-on-line)}.pill.wait{color:var(--st-wait);background:var(--st-wait-bg);border-color:var(--st-wait-line)}.pill.done{color:var(--st-done);background:var(--st-done-bg);border-color:var(--st-done-line)}.pill.bad{color:var(--st-bad);background:var(--st-bad-bg);border-color:var(--st-bad-line)}.pill.off{color:var(--dim);background:var(--bg);border-color:var(--line)}.idhead{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--line)}.idhead .nm{font:800 16px var(--font)}.savebar{display:flex;gap:8px;justify-content:flex-end;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line);background:#fcfdfd}.kv2{display:grid;grid-template-columns:96px minmax(0,1fr);gap:9px 12px;padding:16px}.kv2>:nth-child(odd){color:var(--dim);font-size:12px}.kv2>:nth-child(2n){min-width:0;overflow-wrap:anywhere}.note{font-size:12px;color:var(--dim)}.preview{margin:0 16px 16px;padding:12px 14px;border-radius:10px;background:var(--prmbg);color:var(--prm2);font-weight:700}.sec-h{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line);border-top:1px solid var(--line);font-weight:800}.row{display:flex;gap:8px;align-items:center}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.kpi .l{font-size:12px;color:var(--dim)}.kpi .v{font:800 22px/30px var(--font);margin-top:2px}.kpi .v.prm{color:var(--prm)}.kpi.link{cursor:pointer}.kpi.link:hover{border-color:var(--st-on-line)}.set-row{display:flex;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid #f0f2f5}.set-row:last-child{border-bottom:0}.set-row .tx{flex:1}.set-row .tx b{display:block;font-size:13.5px}.login{margin:12vh auto 0;width:360px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.login h1{display:flex;align-items:center;gap:8px;margin:0 0 4px;font:800 18px var(--font)}.login .sub{color:var(--dim);font-size:12px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}.login label{display:block;font-size:12px;color:var(--dim);margin:10px 0 4px}.login input{width:100%;height:44px}.login .btn{width:100%;height:46px;margin-top:14px}.login .msg{min-height:20px;margin-top:10px;font-size:12.5px;color:var(--st-bad)}.login .ok{color:var(--prm2)}.login-wrap{flex:1}
