body.ws-test-page{height:100vh;overflow:hidden;display:flex;flex-direction:column}.ws-test-container{flex:1;background:var(--bg-dark);overflow:hidden;display:flex;flex-direction:column;margin-top:80px}.ws-test-header{padding:24px 24px 0;color:#fff}.ws-test-header h1{font-size:1.5rem;margin-bottom:4px;display:flex;align-items:center;gap:12px}.ws-test-grid{display:grid;grid-template-columns:380px 1fr;gap:20px;padding:24px;flex:1;overflow:hidden}.ws-control-panel{background:#fff;border-radius:12px;padding:24px;height:100%;overflow-y:auto;box-shadow:0 4px 6px -1px #0000001a}.ws-console{background:#0f172a;border-radius:12px;height:100%;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a;border:1px solid #1e293b}.control-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border)}.control-section:last-child{border-bottom:none}.control-section h3{font-size:.9rem;margin-bottom:16px;color:var(--primary);display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.05em}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.813rem;font-weight:600;margin-bottom:6px;color:var(--text-main)}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:.875rem;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.ws-test-page .btn{padding:10px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:.813rem;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#e2e8f0}.ws-test-page .btn:disabled{opacity:.5;cursor:not-allowed}.button-group{display:flex;gap:10px}.status-indicator{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;font-size:.813rem;font-weight:700}.status-disconnected{background:#fef2f2;color:#991b1b}.status-connected{background:#ecfdf5;color:#065f46}.status-dot{width:8px;height:8px;border-radius:50%}.status-connected .status-dot{background:#10b981;box-shadow:0 0 8px #10b981}.status-disconnected .status-dot{background:#ef4444}.console-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #1e293b;background:#0f172a}.console-header h3{color:#fff;font-size:.938rem;margin:0;display:flex;align-items:center;gap:8px}.console-controls{display:flex;gap:8px}.console-btn{padding:6px 12px;background:#1e293b;border:1px solid #334155;border-radius:4px;color:#94a3b8;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.console-btn:hover{background:#334155;color:#fff}.log-container{flex:1;overflow-y:auto;font-family:JetBrains Mono,monospace;font-size:.813rem;line-height:1.6;padding:12px 24px;background:#0f172a}.log-entry{padding:8px 12px;margin:2px 0;border-radius:4px;word-wrap:break-word;transition:background-color .2s ease}.log-entry:nth-child(odd){background-color:#1e293b4d}.log-entry:nth-child(2n){background-color:#0f172a80}.log-entry:hover{background-color:#33415599}.log-time{color:#64748b;margin-right:12px;font-size:.75rem}.log-content{color:#e2e8f0}.log-type-success .log-content{color:#10b981}.log-type-error .log-content{color:#fb7185}.log-type-warning .log-content{color:#fbbf24}.log-type-price .log-content{color:#818cf8}.log-type-quote .log-content{color:#38bdf8}.ws-test-page ::-webkit-scrollbar{width:8px;height:8px}.ws-test-page ::-webkit-scrollbar-track{background:transparent}.ws-test-page ::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.ws-test-page ::-webkit-scrollbar-thumb:hover{background:#475569}@media(max-width:1024px){.ws-test-container{overflow-y:auto}.ws-test-grid{grid-template-columns:1fr;height:auto;overflow:visible}.ws-control-panel,.ws-console{height:auto;min-height:400px}body.ws-test-page{overflow-y:auto}}
