.layout[data-v-78c5ffb8]{display:flex;flex-direction:column;height:100vh;background:var(--bg);color:var(--text);overflow:hidden}.layout-header[data-v-78c5ffb8]{display:flex;align-items:center;height:48px;padding:0 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;z-index:60;gap:12px}.header-left[data-v-78c5ffb8]{display:flex;align-items:center;gap:12px;min-width:0}.menu-toggle[data-v-78c5ffb8]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;color:var(--muted);transition:all .15s}.menu-toggle[data-v-78c5ffb8]:hover{color:var(--text);background:var(--surface2)}.brand[data-v-78c5ffb8]{display:flex;align-items:center;gap:8px}.brand-icon[data-v-78c5ffb8]{width:24px;height:24px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.brand-name[data-v-78c5ffb8]{font-size:14px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.header-center[data-v-78c5ffb8]{flex:1;text-align:center}.page-title[data-v-78c5ffb8]{font-size:13px;font-weight:600;color:var(--accent2);letter-spacing:.02em}.header-right[data-v-78c5ffb8]{display:flex;align-items:center;gap:12px;flex-shrink:0}.user-name[data-v-78c5ffb8]{font-size:12px;color:var(--text)}.btn-logout[data-v-78c5ffb8]{font-size:11px;color:var(--muted);padding:4px 10px;border-radius:4px;transition:all .15s;border:1px solid transparent}.btn-logout[data-v-78c5ffb8]:hover{color:var(--red);border-color:var(--border);background:#f14c4c14}.layout-body[data-v-78c5ffb8]{display:flex;flex:1;overflow:hidden}.left-menu[data-v-78c5ffb8]{width:200px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;transition:width .25s cubic-bezier(.4,0,.2,1);z-index:50}.left-menu.collapsed[data-v-78c5ffb8]{width:48px}.menu-scroll[data-v-78c5ffb8]{flex:1;overflow-y:auto;padding:12px 0}.menu-section-label[data-v-78c5ffb8]{font-size:9px;font-family:var(--font-mono);color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;padding:0 16px;margin-bottom:6px}.menu-item[data-v-78c5ffb8]{display:flex;align-items:center;gap:10px;width:100%;padding:8px 16px;color:var(--muted);font-size:12px;text-align:left;cursor:pointer;transition:all .12s;border-left:2px solid transparent;position:relative}.menu-item[data-v-78c5ffb8]:hover{color:var(--text);background:#ffffff08}.menu-item.active[data-v-78c5ffb8]{color:var(--accent);background:#007acc14;border-left-color:var(--accent)}.menu-item.collapsed[data-v-78c5ffb8]{justify-content:center;padding:8px 0}.menu-icon[data-v-78c5ffb8]{width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menu-label[data-v-78c5ffb8]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-tooltip[data-v-78c5ffb8]{position:absolute;left:100%;margin-left:10px;background:var(--surface);border:1px solid var(--border);padding:5px 10px;border-radius:5px;font-size:11px;color:var(--text);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:all .15s;box-shadow:0 4px 12px #0006;z-index:200}.menu-item.collapsed:hover .menu-tooltip[data-v-78c5ffb8]{opacity:1;visibility:visible}.content-area[data-v-78c5ffb8]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.content-scroll[data-v-78c5ffb8]{flex:1;overflow-y:auto;padding:20px 24px}.right-aside[data-v-78c5ffb8]{width:260px;background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;transition:width .25s cubic-bezier(.4,0,.2,1);z-index:50}.right-aside.collapsed[data-v-78c5ffb8]{width:44px}.aside-header[data-v-78c5ffb8]{display:flex;align-items:center;gap:8px;padding:12px 14px;font-size:12px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border);flex-shrink:0}.aside-header svg[data-v-78c5ffb8]{color:var(--accent);flex-shrink:0}.live-indicator[data-v-78c5ffb8]{width:6px;height:6px;border-radius:50%;background:var(--green);display:inline-block;box-shadow:0 0 6px var(--green);animation:pulse-dot-78c5ffb8 2s ease-in-out infinite;margin-left:auto}@keyframes pulse-dot-78c5ffb8{0%,to{opacity:1;box-shadow:0 0 6px var(--green)}50%{opacity:.4;box-shadow:0 0 2px var(--green)}}.aside-close[data-v-78c5ffb8]{margin-left:auto;font-size:16px;line-height:1;color:var(--muted);padding:2px 6px;border-radius:4px;transition:all .15s}.aside-close[data-v-78c5ffb8]:hover{color:var(--text);background:var(--surface2)}.aside-body[data-v-78c5ffb8]{flex:1;overflow-y:auto;display:flex}.empty-state[data-v-78c5ffb8]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--muted);text-align:center}.empty-state svg[data-v-78c5ffb8]{opacity:.3;margin-bottom:10px}.empty-state p[data-v-78c5ffb8]{font-size:12px}.aside-toggle-btn[data-v-78c5ffb8]{display:flex;align-items:center;justify-content:center;padding:16px 0;color:var(--accent);opacity:.6;transition:all .15s}.aside-toggle-btn[data-v-78c5ffb8]:hover{opacity:1}.layout-footer[data-v-78c5ffb8]{display:flex;align-items:center;height:30px;padding:0 16px;background:var(--surface2);border-top:1px solid var(--border);flex-shrink:0;font-size:11px;color:var(--muted);gap:12px}.footer-left[data-v-78c5ffb8]{display:flex;align-items:center;gap:6px}.status-dot[data-v-78c5ffb8]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-dot.online[data-v-78c5ffb8]{background:var(--green);box-shadow:0 0 4px var(--green)}.status-text[data-v-78c5ffb8]{font-family:var(--font-mono);font-size:10px}.footer-center[data-v-78c5ffb8]{flex:1;text-align:center}.version[data-v-78c5ffb8]{font-family:var(--font-mono);font-size:10px;opacity:.5}.footer-right[data-v-78c5ffb8]{display:flex;align-items:center;gap:6px}.clock[data-v-78c5ffb8]{font-family:var(--font-mono);font-size:11px;color:var(--accent2)}.toast-container[data-v-78c5ffb8]{position:fixed;bottom:50px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:1000;pointer-events:none}.toast-item[data-v-78c5ffb8]{padding:10px 18px;border-radius:8px;font-size:12px;font-weight:500;box-shadow:0 6px 24px #0006;color:#fff;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toast-success[data-v-78c5ffb8]{background:#89d185e6;color:#000}.toast-error[data-v-78c5ffb8]{background:#f14c4ce6}.toast-info[data-v-78c5ffb8]{background:#2d2d30f2}.toast-enter-active[data-v-78c5ffb8]{animation:toastIn-78c5ffb8 .28s ease-out}.toast-leave-active[data-v-78c5ffb8]{animation:toastIn-78c5ffb8 .28s ease-in reverse}@keyframes toastIn-78c5ffb8{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}:root{--bg: #1e1e1e;--surface: #252526;--surface2: #2d2d30;--border: #3c3c3c;--accent: #007acc;--accent2: #569cd6;--green: #89d185;--red: #f14c4c;--text: #cccccc;--muted: #858585;--font-body: "Noto Sans KR", sans-serif;--font-mono: "DM Mono", monospace;--font-disp: "Bebas Neue", cursive;--radius: 10px;--shadow: 0 4px 32px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:var(--font-body);background:var(--bg);color:var(--text);overflow:hidden}button{background:none;border:none;cursor:pointer}
