{% extends "base.html" %} {% block css %} .container { margin: 0 auto; padding: 10px; } #pause-button { white-space: nowrap; padding: 4px 10px; font-size: 0.9rem; border-radius: 6px; } .port-tag { display: inline-block; padding: 2px 6px; border-radius: 6px; font-size: 0.75rem; font-weight: 500; color: #fff; } /* Packet table */ .packet-table { width: 100%; border-collapse: collapse; font-size: 0.85rem; color: #e4e9ee; } .packet-table th, .packet-table td { border: 1px solid #3a3f44; padding: 6px 10px; text-align: left; } .packet-table th { background-color: #1f2226; font-weight: bold; } .packet-table tr:nth-of-type(odd) { background-color: #272b2f; } .packet-table tr:nth-of-type(even) { background-color: #212529; } /* Port tag */ .port-tag { display: inline-block; padding: 1px 6px; border-radius: 6px; font-size: 0.75rem; font-weight: 500; color: #fff; } .to-mqtt { font-style: italic; color: #aaa; } /* Payload rows */ .payload-row { display: none; background-color: #1b1e22; } .payload-cell { padding: 8px 12px; font-family: monospace; white-space: pre-wrap; color: #b0bec5; } .packet-table tr.expanded + .payload-row { display: table-row; } /* Toggle arrow */ .toggle-btn { cursor: pointer; color: #aaa; margin-right: 6px; font-weight: bold; } .toggle-btn:hover { color: #fff; } /* Inline link next to port tag */ .inline-link { margin-left: 6px; font-weight: bold; text-decoration: none; color: #9fd4ff; } .inline-link:hover { color: #c7e6ff; } {% endblock %} {% block body %}
| Time | Packet ID | From | To | Port |
|---|