@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--sidebar-width:72px;--topbar-height:56px;--green:#10b981;--green-light:#d1fae5;--red:#ef4444;--red-light:#fee2e2;--purple:#8b5cf6;--purple-dark:#312e81;--blue:#3b82f6;--orange:#f59e0b;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--white:#fff;--card-shadow:0 1px 3px #0000000a;--card-border:#e5e7eb}html{scrollbar-gutter:stable;overflow-y:scroll}body{color:var(--gray-700);background:var(--gray-50);-webkit-font-smoothing:antialiased;font-family:Noto Sans KR,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5}#app{min-height:100vh;display:flex}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;border:none;font-family:inherit}input{font-family:inherit}.sidebar[data-v-1a298b8a]{width:var(--sidebar-width);background:var(--white);border-right:1px solid var(--card-border);z-index:50;flex-direction:column;align-items:center;padding:14px 0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar-top[data-v-1a298b8a]{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex}.sidebar-logo[data-v-1a298b8a]{margin-bottom:10px}.sidebar-nav[data-v-1a298b8a]{flex-direction:column;gap:2px;width:100%;padding:0 8px;display:flex}.nav-btn[data-v-1a298b8a]{width:100%;color:var(--gray-400);background:0 0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:10px 0;transition:all .15s;display:flex}.nav-btn[data-v-1a298b8a]:hover{background:var(--gray-100);color:var(--gray-600)}.nav-btn.active[data-v-1a298b8a]{color:#059669;background:#d1fae5}.nav-label[data-v-1a298b8a]{white-space:nowrap;font-size:11px;font-weight:500;line-height:1.2}.topbar[data-v-4fbd6fe1]{height:var(--topbar-height);background:var(--white);border-bottom:1px solid var(--card-border);top:0;left:var(--sidebar-width);z-index:40;justify-content:space-between;align-items:center;gap:16px;padding:0 24px;display:flex;position:fixed;right:0}.topbar-left[data-v-4fbd6fe1]{flex-shrink:0;align-items:center;gap:12px;display:flex}.brand-name[data-v-4fbd6fe1]{color:var(--gray-900);font-size:17px;font-weight:700}.center-badge[data-v-4fbd6fe1]{color:var(--green);background:#ecfdf5;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:500;display:flex}.status-dot[data-v-4fbd6fe1]{background:var(--green);border-radius:50%;width:7px;height:7px;animation:2s infinite pulse-4fbd6fe1}@keyframes pulse-4fbd6fe1{0%,to{opacity:1}50%{opacity:.5}}.topbar-center[data-v-4fbd6fe1]{flex:1;max-width:520px;position:relative}.search-box[data-v-4fbd6fe1]{background:var(--gray-50);border:1px solid var(--gray-200);width:100%;color:var(--gray-400);border-radius:8px;align-items:center;gap:8px;padding:7px 12px;transition:border-color .2s;display:flex}.search-box[data-v-4fbd6fe1]:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #10b9811a}.search-box.focused[data-v-4fbd6fe1]{border-radius:8px 8px 0 0}.search-box input[data-v-4fbd6fe1]{color:var(--gray-700);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.search-box input[data-v-4fbd6fe1]::placeholder{color:var(--gray-400)}.search-shortcut[data-v-4fbd6fe1]{color:var(--gray-400);background:var(--white);border:1px solid var(--gray-200);border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:12px}.search-dropdown[data-v-4fbd6fe1]{border:1px solid var(--gray-200);z-index:50;background:#fff;border-top:none;border-radius:0 0 8px 8px;max-height:360px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001a}.sr-item[data-v-4fbd6fe1]{cursor:pointer;align-items:center;gap:10px;padding:10px 14px;transition:background .1s;display:flex}.sr-item[data-v-4fbd6fe1]:hover{background:var(--gray-50)}.sr-icon[data-v-4fbd6fe1]{flex-shrink:0;font-size:17px}.sr-text[data-v-4fbd6fe1]{flex-direction:column;flex:1;min-width:0;display:flex}.sr-label[data-v-4fbd6fe1]{color:var(--gray-900);font-size:14px;font-weight:500}.sr-sub[data-v-4fbd6fe1]{color:var(--gray-400);font-size:12px}.sr-type[data-v-4fbd6fe1]{background:var(--gray-100);color:var(--gray-500);border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:11px;font-weight:600}.sr-empty[data-v-4fbd6fe1]{text-align:center;color:var(--gray-400);padding:20px 14px;font-size:14px}.topbar-right[data-v-4fbd6fe1]{flex-shrink:0;align-items:center;gap:12px;display:flex}.quick-actions[data-v-4fbd6fe1]{gap:6px;display:flex}.quick-btn[data-v-4fbd6fe1]{background:var(--white);border:1px solid var(--gray-200);color:var(--gray-600);white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:5px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.quick-btn[data-v-4fbd6fe1]:hover{background:var(--gray-50);border-color:var(--gray-300)}.quick-btn.primary[data-v-4fbd6fe1]{background:var(--green);color:var(--white);border-color:var(--green)}.quick-btn.primary[data-v-4fbd6fe1]:hover{background:#059669}.icon-btn[data-v-4fbd6fe1]{width:34px;height:34px;color:var(--gray-500);background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.icon-btn[data-v-4fbd6fe1]:hover{background:var(--gray-100);color:var(--gray-700)}.notif-badge[data-v-4fbd6fe1]{color:#fff;background:#ef4444;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;font-weight:600;line-height:1;display:flex;position:absolute;top:2px;right:2px}.user-area[data-v-4fbd6fe1]{border-left:1px solid var(--gray-200);align-items:center;gap:8px;padding-left:12px;display:flex}.avatar[data-v-4fbd6fe1]{background:var(--green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:flex}.user-info[data-v-4fbd6fe1]{flex-direction:column;display:flex}.user-name[data-v-4fbd6fe1]{color:var(--gray-800);font-size:14px;font-weight:600;line-height:1.2}.user-role[data-v-4fbd6fe1]{color:var(--gray-400);font-size:12px}.notif-wrap[data-v-4fbd6fe1]{position:relative}.notification-btn.active[data-v-4fbd6fe1]{background:var(--gray-100);color:var(--gray-700)}.notif-panel[data-v-4fbd6fe1]{border:1px solid var(--gray-200);z-index:60;background:#fff;border-radius:12px;flex-direction:column;width:380px;max-height:460px;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 36px #0000001f}.np-header[data-v-4fbd6fe1]{border-bottom:1px solid var(--gray-100);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.np-header h4[data-v-4fbd6fe1]{color:var(--gray-900);margin:0;font-size:15px;font-weight:700}.np-mark-read[data-v-4fbd6fe1]{color:var(--green);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.np-mark-read[data-v-4fbd6fe1]:hover{text-decoration:underline}.np-list[data-v-4fbd6fe1]{flex:1;overflow-y:auto}.np-item[data-v-4fbd6fe1]{cursor:pointer;border-bottom:1px solid var(--gray-50);align-items:flex-start;gap:10px;padding:12px 16px;transition:background .1s;display:flex}.np-item[data-v-4fbd6fe1]:hover{background:var(--gray-50)}.np-item.unread[data-v-4fbd6fe1]{background:#f0fdf4}.np-item.unread[data-v-4fbd6fe1]:hover{background:#dcfce7}.np-icon[data-v-4fbd6fe1]{flex-shrink:0;margin-top:1px;font-size:18px}.np-body[data-v-4fbd6fe1]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.np-title[data-v-4fbd6fe1]{color:var(--gray-800);font-size:13px;font-weight:600;line-height:1.3}.np-desc[data-v-4fbd6fe1]{color:var(--gray-500);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.3;overflow:hidden}.np-time[data-v-4fbd6fe1]{color:var(--gray-400);white-space:nowrap;flex-shrink:0;margin-top:1px;font-size:11px}.np-empty[data-v-4fbd6fe1]{text-align:center;color:var(--gray-400);padding:32px 16px;font-size:14px}.notif-drop-enter-active[data-v-4fbd6fe1]{transition:all .15s ease-out}.notif-drop-leave-active[data-v-4fbd6fe1]{transition:all .1s ease-in}.notif-drop-enter-from[data-v-4fbd6fe1],.notif-drop-leave-to[data-v-4fbd6fe1]{opacity:0;transform:translateY(-6px)scale(.97)}.quick-btn.urgent[data-v-4fbd6fe1]{color:#dc2626;border-color:#fecaca}.quick-btn.urgent[data-v-4fbd6fe1]:hover{background:#fef2f2}.qm-overlay[data-v-4fbd6fe1]{z-index:200;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.qm-modal[data-v-4fbd6fe1]{background:#fff;border-radius:14px;flex-direction:column;width:420px;max-width:90vw;max-height:80vh;display:flex;box-shadow:0 20px 60px #00000026}.qm-header[data-v-4fbd6fe1]{justify-content:space-between;align-items:center;padding:16px 20px 0;display:flex}.qm-header h3[data-v-4fbd6fe1]{color:var(--gray-900);font-size:17px;font-weight:700}.qm-close[data-v-4fbd6fe1]{color:var(--gray-400);cursor:pointer;background:0 0;border:none;font-size:23px;line-height:1}.qm-desc[data-v-4fbd6fe1]{color:var(--gray-500);padding:4px 20px 12px;font-size:13px}.qm-search[data-v-4fbd6fe1]{background:var(--gray-50);border:1px solid var(--gray-200);color:var(--gray-400);border-radius:8px;align-items:center;gap:8px;margin:0 20px 12px;padding:8px 12px;display:flex}.qm-search input[data-v-4fbd6fe1]{color:var(--gray-700);background:0 0;border:none;outline:none;flex:1;font-size:14px}.qm-list[data-v-4fbd6fe1]{max-height:320px;padding:0 12px;overflow-y:auto}.qm-item[data-v-4fbd6fe1]{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;padding:10px 8px;transition:background .1s;display:flex}.qm-item[data-v-4fbd6fe1]:hover{background:var(--gray-50)}.qm-avatar[data-v-4fbd6fe1]{background:var(--green);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:600;display:flex}.qm-info[data-v-4fbd6fe1]{flex-direction:column;flex:1;display:flex}.qm-name[data-v-4fbd6fe1]{color:var(--gray-800);align-items:center;gap:4px;font-size:14px;font-weight:600;display:flex}.qm-vip[data-v-4fbd6fe1]{color:#d97706;background:#fef3c7;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:700}.qm-phone[data-v-4fbd6fe1]{color:var(--gray-400);font-size:12px}.qm-empty[data-v-4fbd6fe1]{text-align:center;color:var(--gray-400);padding:20px;font-size:14px}.qm-new-btn[data-v-4fbd6fe1]{background:var(--gray-50);border:1px dashed var(--gray-300);color:var(--gray-500);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin:12px 20px 16px;padding:9px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.qm-new-btn[data-v-4fbd6fe1]:hover{border-color:var(--green);color:var(--green);background:#ecfdf5}@media (width<=1024px){.quick-actions[data-v-4fbd6fe1],.user-info[data-v-4fbd6fe1],.center-badge[data-v-4fbd6fe1]{display:none}}.toast-container[data-v-b0b06015]{z-index:99999;pointer-events:none;flex-direction:column;gap:10px;max-width:420px;display:flex;position:fixed;top:20px;right:24px}.toast-item[data-v-b0b06015]{pointer-events:auto;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;min-width:280px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.4;display:flex;box-shadow:0 6px 24px #0000001f,0 2px 8px #0000000f}.toast-item.success[data-v-b0b06015]{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.toast-item.success .toast-icon[data-v-b0b06015]{color:#10b981}.toast-item.error[data-v-b0b06015]{color:#991b1b;background:#fef2f2;border-color:#fecaca}.toast-item.error .toast-icon[data-v-b0b06015]{color:#ef4444}.toast-item.warning[data-v-b0b06015]{color:#92400e;background:#fffbeb;border-color:#fde68a}.toast-item.warning .toast-icon[data-v-b0b06015]{color:#f59e0b}.toast-item.info[data-v-b0b06015]{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.toast-item.info .toast-icon[data-v-b0b06015]{color:#3b82f6}.toast-icon[data-v-b0b06015]{flex-shrink:0;align-items:center;display:flex}.toast-msg[data-v-b0b06015]{flex:1;min-width:0}.toast-close[data-v-b0b06015]{cursor:pointer;opacity:.4;color:inherit;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;transition:opacity .15s;display:flex}.toast-close[data-v-b0b06015]:hover{opacity:.8}.toast-enter-active[data-v-b0b06015]{animation:.35s ease-out toast-in-b0b06015}.toast-leave-active[data-v-b0b06015]{animation:.28s ease-in forwards toast-out-b0b06015}.toast-move[data-v-b0b06015]{transition:transform .3s}@keyframes toast-in-b0b06015{0%{opacity:0;transform:translate(60px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toast-out-b0b06015{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(60px)scale(.92)}}.fab-messenger[data-v-649b8063]{z-index:9000;position:fixed;bottom:24px;right:24px}.fab-btn[data-v-649b8063]{background:var(--green,#10b981);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:all .2s;display:flex;position:relative;box-shadow:0 4px 16px #10b98159}.fab-btn[data-v-649b8063]:hover{transform:scale(1.08);box-shadow:0 6px 24px #10b98173}.fab-btn.active[data-v-649b8063]{background:var(--gray-700,#374151);box-shadow:0 4px 16px #0003}.fab-badge[data-v-649b8063]{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-2px;right:-2px}.fab-panel[data-v-649b8063]{border:1px solid var(--gray-200,#e5e7eb);background:#fff;border-radius:14px;flex-direction:column;width:280px;display:flex;position:absolute;bottom:64px;right:0;overflow:hidden;box-shadow:0 12px 40px #00000024}.fp-header[data-v-649b8063]{border-bottom:1px solid var(--gray-100,#f3f4f6);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.fp-header h4[data-v-649b8063]{color:var(--gray-900,#111827);margin:0;font-size:15px;font-weight:700}.fp-online[data-v-649b8063]{color:var(--green,#10b981);font-size:12px;font-weight:500}.fp-list[data-v-649b8063]{max-height:300px;padding:6px;overflow-y:auto}.fp-contact[data-v-649b8063]{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;transition:background .1s;display:flex}.fp-contact[data-v-649b8063]:hover{background:var(--gray-50,#f9fafb)}.fp-avatar[data-v-649b8063]{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.fp-avatar.on[data-v-649b8063]{background:var(--green,#10b981)}.fp-avatar.off[data-v-649b8063]{background:var(--gray-300,#d1d5db)}.fp-info[data-v-649b8063]{flex-direction:column;flex:1;min-width:0;display:flex}.fp-name[data-v-649b8063]{color:var(--gray-800,#1f2937);font-size:13px;font-weight:600}.fp-role[data-v-649b8063]{color:var(--gray-400,#9ca3af);font-size:11px}.fp-status-dot[data-v-649b8063]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.fp-status-dot.on[data-v-649b8063]{background:#10b981}.fp-status-dot.off[data-v-649b8063]{background:#d1d5db}.fp-footer[data-v-649b8063]{border-top:1px solid var(--gray-100,#f3f4f6);text-align:center;padding:10px 16px}.fp-hint[data-v-649b8063]{color:var(--gray-400,#9ca3af);font-size:12px}.fab-pop-enter-active[data-v-649b8063]{transition:all .2s ease-out}.fab-pop-leave-active[data-v-649b8063]{transition:all .15s ease-in}.fab-pop-enter-from[data-v-649b8063],.fab-pop-leave-to[data-v-649b8063]{opacity:0;transform:translateY(12px)scale(.95)}.main-content[data-v-246c6bac]{margin-left:var(--sidebar-width);margin-top:var(--topbar-height);min-height:calc(100vh - var(--topbar-height));width:calc(100vw - var(--sidebar-width));padding:9px 28px}
