.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;border-radius:6px;background:var(--bg-black);color:var(--text-primary);cursor:pointer;transition:all .15s ease;white-space:nowrap;border:none;outline:1px solid rgba(255,255,255,.15)}.btn:hover:not(:disabled){box-shadow:0 0 10px 1px #ffffff4d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--white);color:#000}.btn-ghost{background:transparent;border-color:transparent;padding:6px}.btn-loading{cursor:wait}.btn .spinner{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}@media(max-width:768px){.btn{padding:10px 14px;font-size:14px;min-height:44px}.btn-ghost{min-height:36px;padding:6px}}.sidebar{width:280px;min-width:280px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow-y:auto}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:100;transform:translate(-100%);transition:transform .3s ease;width:85%;max-width:320px}.sidebar.open{transform:translate(0)}}.sidebar-section{border-bottom:1px solid var(--border-color)}.sidebar-section:last-child{border-bottom:none;margin-top:auto}.sidebar-section-header{display:flex;align-items:center;gap:8px;padding:13px 16px;font-size:12px;font-weight:600;letter-spacing:.5px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.sidebar-section-content{padding:16px;display:flex;flex-direction:column;gap:12px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.form-group input{width:100%}.error-message{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:#f851491a;border:1px solid rgba(248,81,73,.3);border-radius:6px;color:var(--accent-red);font-size:12px}.error-message svg{flex-shrink:0;margin-top:1px}.session-info{padding:10px 12px;background:var(--bg-tertiary);border-radius:6px}.session-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:4px}.session-id{color:var(--accent-green);font-size:12px}.stateless-badge{display:inline-flex;align-items:center;gap:6px;color:var(--accent-orange, #f0883e);font-size:12px;font-weight:500}.sidebar-about{font-size:13px;color:var(--text-secondary);line-height:1.6}.sidebar-links{display:flex;flex-direction:column;gap:4px}.sidebar-links a{font-size:13px;color:var(--accent-blue);text-decoration:none}.sidebar-links a:hover{text-decoration:underline}.small{font-size:12px;color:var(--text-secondary)}.tools-panel{flex:1;display:flex;flex-direction:column;border-right:1px solid var(--border-color);min-width:300px;max-width:50%}.panel-header{display:flex;align-items:center;gap:8px;padding:8px 16px;min-height:45px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);font-size:13px;font-weight:600}.tool-count{background:#ffffff1a;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;color:var(--text-secondary)}.refresh-button{margin-left:auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.refresh-button:hover{background:var(--bg-primary);color:var(--text-primary);border-color:var(--text-muted)}.refresh-button:disabled{cursor:not-allowed;opacity:.5}.refresh-button.refreshing svg{animation:spin .8s linear infinite}.tools-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.tools-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;color:var(--text-muted);text-align:center}.tools-layout{display:flex;flex:1;overflow:hidden}.tools-list{width:200px;min-width:200px;border-right:1px solid var(--border-color);overflow-y:auto}.tool-item{width:100%;display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:transparent;border:none;border-bottom:1px solid var(--border-color);text-align:left;cursor:pointer;transition:background .15s}.tool-item:hover,.tool-item.selected{background:var(--bg-tertiary)}.tool-item.selected .tool-chevron{transform:rotate(90deg);color:var(--accent-blue)}.tool-chevron{flex-shrink:0;color:var(--text-muted);margin-top:2px;transition:transform .15s}.tool-info{display:flex;flex-direction:column;gap:2px;overflow:hidden}.tool-name{font-size:13px;font-weight:500;color:var(--text-primary)}.tool-description{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-detail{flex:1;display:flex;flex-direction:column;overflow:hidden}.tool-detail-header{padding:16px;border-bottom:1px solid var(--border-color)}.tool-detail-header h3{font-size:14px;font-weight:600;margin-bottom:4px}.tool-detail-header p{font-size:13px;color:var(--text-secondary)}.tool-params{flex:1;overflow-y:auto;padding:16px}.params-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.json-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;text-transform:none;letter-spacing:0}.json-editor{width:100%;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:12px;color:var(--text-primary);resize:vertical}.json-editor:focus{outline:none;border-color:var(--accent-blue)}.params-form{display:flex;flex-direction:column;gap:14px}.param-field{display:flex;flex-direction:column;gap:4px}.param-field label{font-size:12px;font-weight:500;color:var(--text-primary)}.param-field .required{color:var(--accent-red);margin-left:2px}.param-description{font-size:11px;color:var(--text-muted)}.param-field input,.param-field select{width:100%}.no-params{font-size:13px;color:var(--text-muted);font-style:italic}.tool-actions{padding:16px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.tool-actions button{width:100%;justify-content:center}.spinner{width:14px;height:14px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:1200px){.tools-panel{max-width:none;border-right:none;border-bottom:1px solid var(--border-color)}}@media(max-width:768px){.tools-panel{flex:none;min-width:0;max-width:100%;width:100%}.refresh-button{min-height:28px;width:36px;height:36px}.tools-content{flex:none;width:100%;max-width:100%}.tools-layout{flex:none;flex-direction:column;width:100%;max-width:100%}.tools-list{width:100%;min-width:0;max-width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--border-color);flex-shrink:0}.tool-item{padding:12px 16px;min-height:auto}.tool-detail{flex:none;width:100%;max-width:100%}.tool-detail-header{padding:12px 16px}.tool-params{flex:none;padding:12px 16px;overflow:visible}.tool-actions{padding:12px 16px}.param-field input,.param-field select{font-size:16px;padding:10px 12px}.json-editor{font-size:14px;min-height:120px}}.results-pane{flex:1;display:flex;flex-direction:column;min-width:300px;min-height:0;background:var(--bg-primary)}.results-pane.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;min-width:0}.results-pane .panel-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.results-tabs{display:flex;gap:0}.tab{display:inline-flex;align-items:center;gap:6px;padding:12px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:color .15s,border-color .15s}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--white);border-bottom-color:var(--accent-blue)}.tab-badge{display:inline-block;width:5px;height:5px;margin-left:2px;border-radius:50%;background:#ffffff80}.tab-badge.active{background:var(--accent-blue)}.results-actions{display:flex;align-items:center;gap:12px}.timestamp{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted)}.metrics{display:flex;align-items:center;gap:12px}.metric{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-weight:400}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;font-size:10px;background:var(--accent-blue);color:var(--white);border-radius:9px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;color:var(--text-secondary);border-radius:4px}.icon-button:hover{background:var(--bg-hover);color:var(--text-primary)}.results-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.results-loading,.results-empty,.results-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);text-align:center;padding:40px}.results-loading p,.results-empty p{font-size:14px}.results-empty span{font-size:12px;color:var(--text-muted)}.results-error{color:var(--accent-red)}.results-error p{font-size:14px;font-weight:600}.results-error pre{margin-top:8px;padding:12px 16px;background:#f851491a;border:1px solid rgba(248,81,73,.3);border-radius:6px;font-size:12px;max-width:100%;overflow-x:auto;text-align:left}.loader{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ui-frame{flex:1;width:100%;border:none;background:#fff}.text-output{flex:1;overflow:auto;padding:16px}.text-output pre{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.events-panel{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.events-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);text-align:center;padding:40px}.events-empty p{font-size:14px}.events-empty span{font-size:12px;color:var(--text-muted)}.events-list{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.event-item{flex-shrink:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.event-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.event-type{font-size:12px;font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;color:var(--text-primary)}.event-time{font-size:10px;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.event-payload{padding:10px 12px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11px;line-height:1.5;color:var(--text-secondary);margin:0;white-space:pre-wrap;word-break:break-word}.event-message .event-type{color:var(--accent-blue)}.event-tool .event-type{color:var(--accent-purple, #a855f7)}.event-resize .event-type{color:var(--accent-green, #22c55e)}@media(max-width:1200px){.results-pane{min-width:0}}@media(max-width:768px){.results-pane{flex:none;min-width:0;min-height:0;width:100%;max-width:100%}.results-content{flex:none;width:100%;max-width:100%}.ui-frame{flex:none;height:500px;min-height:500px;width:100%;max-width:100%}.results-pane .panel-header{padding:0 12px;flex-wrap:wrap;gap:8px}.results-tabs{flex-wrap:nowrap}.tab{padding:10px 12px;font-size:12px;min-height:auto}.results-actions{gap:8px}.timestamp,.metrics{display:none}.results-loading,.results-empty,.results-error{flex:none;min-height:200px;padding:24px 16px}.results-error pre{font-size:11px;padding:10px 12px}.text-output{flex:none;padding:12px}.text-output pre{font-size:12px}.events-panel{flex:none;width:100%;max-width:100%}.events-list{flex:none;padding:8px;gap:6px;overflow:visible}.event-header{padding:6px 10px}.event-payload{padding:8px 10px;font-size:10px}}.app{display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);gap:12px}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;flex-shrink:0}.mobile-menu-toggle:hover{background:var(--bg-tertiary)}.header-brand{display:flex;align-items:center;gap:7px;color:var(--white);cursor:pointer}.header-brand svg{color:var(--white)}.header-brand h1{font-size:18px;font-weight:600;white-space:nowrap}.header-status{display:flex;align-items:center;margin-left:auto}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.status-badge.connected{background:#3fb95026;color:var(--accent-green)}.status-badge.disconnected{background:#8b949e26;color:var(--text-secondary)}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}.status-badge.connected .status-dot{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.main-layout{display:flex;flex:1;min-height:0;overflow:hidden;position:relative}.sidebar-overlay{display:none}.content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.content-panels{display:flex;flex:1;min-height:0;overflow:hidden}@media(max-width:1200px){.content-panels{flex-direction:column}}@media(max-width:768px){.app{height:auto;max-height:none;min-height:100vh;overflow-x:hidden;overflow-y:auto;width:100%;max-width:100vw}.header{padding:10px 16px;flex-shrink:0}.mobile-menu-toggle{display:flex}.header-brand h1{font-size:16px}.status-text{display:none}.status-badge{padding:6px}.sidebar-overlay{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:99}.main-layout,.content{flex:none;width:100%;max-width:100%}.content-panels{flex:none;flex-direction:column;width:100%;max-width:100%}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #000000;--bg-secondary: #000000;--bg-tertiary: #141414;--border-color: #30363d;--text-primary: #e6edf3;--text-secondary: #8b949e;--text-muted: #6e7681;--accent-blue: #0c37f6;--accent-green: #3fb950;--accent-red: #f85149;--accent-orange: #d29922;--accent-purple: #a371f7;--white: #ffffff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5;min-height:100vh}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}input,select,textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);padding:8px 12px;font-size:14px;outline:none;transition:border-color .2s}input:focus,select:focus,textarea:focus{border-color:var(--white)}code,.mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:13px}::selection{background:var(--accent-blue);color:#fff}@media(max-width:768px){html,body{overflow-x:hidden;max-width:100vw}button,input,select,textarea{min-height:44px}input,select,textarea{font-size:16px;max-width:100%}}@supports (padding: env(safe-area-inset-bottom)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}}
