.container { max-width: 1200px; margin: 0 auto; padding: 20px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } h1 { color: #2c3e50; text-align: center; margin-bottom: 30px; } /* Tab Styles */ .tabs { display: flex; border-bottom: 2px solid #e1e8ed; margin-bottom: 20px; } .tab { padding: 12px 24px; background: none; border: none; cursor: pointer; font-size: 14px; color: #657786; transition: all 0.2s ease; border-bottom: 2px solid transparent; } .tab:hover { color: #1da1f2; background-color: #f7f9fa; } .tab-active { padding: 12px 24px; background: none; border: none; cursor: pointer; font-size: 14px; color: #1da1f2; border-bottom: 2px solid #1da1f2; font-weight: 600; } /* Tab Content */ .tab-content { min-height: 400px; } .section { background: #ffffff; border: 1px solid #e1e8ed; border-radius: 8px; padding: 20px; margin-bottom: 20px; } .section h3 { margin-top: 0; margin-bottom: 20px; color: #14171a; } /* Form Styles */ .form-row { display: flex; gap: 12px; margin-bottom: 16px; align-items: flex-start; } .form-row:last-child { margin-bottom: 0; } input[type="text"], .uri-input, .search-input { flex: 1; padding: 12px 16px; border: 1px solid #ccd6dd; border-radius: 6px; font-size: 14px; transition: border-color 0.2s ease; } input[type="text"]:focus, .uri-input:focus, .search-input:focus { outline: none; border-color: #1da1f2; box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.1); } .markdown-editor { width: 100%; padding: 12px 16px; border: 1px solid #ccd6dd; border-radius: 6px; font-size: 14px; font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; resize: vertical; transition: border-color 0.2s ease; } .markdown-editor:focus { outline: none; border-color: #1da1f2; box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.1); } button { padding: 12px 24px; background-color: #1da1f2; color: white; border: none; border-radius: 6px; font-size: 14px; font-weight: 600; cursor: pointer; transition: background-color 0.2s ease; white-space: nowrap; } button:hover:not(:disabled) { background-color: #1991da; } button:disabled { background-color: #aab8c2; cursor: not-allowed; } /* Response Section */ .response-section { margin-top: 30px; } .response-section h3 { margin-bottom: 10px; color: #14171a; } .response { background-color: #f8f9fa; border: 1px solid #e1e8ed; border-radius: 6px; padding: 16px; font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 12px; line-height: 1.4; max-height: 400px; overflow-y: auto; white-space: pre-wrap; word-wrap: break-word; } .response:empty { color: #657786; font-style: italic; } .response:empty::before { content: "Response will appear here..."; } /* DHT and Network specific styles */ .dht-status { color: #657786; font-size: 12px; margin: 0; font-style: italic; } .network-info { background: #f7f9fa; border-radius: 6px; padding: 16px; margin-top: 16px; } .network-info p { margin: 0 0 12px 0; color: #14171a; } .network-info ul { margin: 0; padding-left: 20px; } .network-info li { margin: 6px 0; color: #657786; font-size: 14px; } .network-info strong { color: #14171a; } hr { border: none; border-top: 1px solid #e1e8ed; margin: 24px 0; } /* Status indicators */ .status-connected { color: #17bf63; font-weight: 600; } .status-disconnected { color: #e0245e; font-weight: 600; } .status-warning { color: #ffad1f; font-weight: 600; } /* Demo Content Styles */ .demo-content { margin-top: 20px; border: 1px solid #e1e8ed; border-radius: 8px; overflow: hidden; background: white; } .form-row label { font-weight: 600; color: #14171a; min-width: 100px; display: flex; align-items: center; } .form-row select { padding: 8px 12px; border: 1px solid #ccd6dd; border-radius: 6px; font-size: 14px; background: white; cursor: pointer; transition: border-color 0.2s ease; } .form-row select:focus { outline: none; border-color: #1da1f2; box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.1); } /* Responsive Design */ @media (max-width: 768px) { .tabs { flex-wrap: wrap; } .form-row { flex-direction: column; align-items: stretch; } .form-row input[type="text"], .form-row .uri-input, .form-row .search-input { margin-bottom: 8px; } .form-row label { min-width: auto; margin-bottom: 4px; } }