:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*,:before,:after{box-sizing:border-box}body{margin:0}:root{--text-color:#333;--bg-color:#fff;--muted-color:#666;--border-color:#ddd;--header-bg:#f5f5f5;--selected-bg:#e3f2fd;--current-bg:#ffe0b2;--button-bg:#e0e0e0;--button-active-bg:#4caf50;--button-text:#333;--button-active-text:#fff;--error-bg:#fdecea;--error-border:#f5a29a;--error-text:#8a1c12;--warning-color:#b36b00;--ok-color:#2e7d32}@media (prefers-color-scheme:dark){:root{--text-color:#e0e0e0;--bg-color:#1a1a1a;--muted-color:#9e9e9e;--border-color:#444;--header-bg:#2d2d2d;--selected-bg:#1a3a4a;--current-bg:#5a3c16;--button-bg:#444;--button-active-bg:#2d7d32;--button-text:#e0e0e0;--button-active-text:#fff;--error-bg:#3a1714;--error-border:#7d2f27;--error-text:#ffb4ab;--warning-color:#ffb74d;--ok-color:#81c784}}#root{max-width:1280px;margin:0 auto}.app{background-color:var(--bg-color);color:var(--text-color);min-height:100vh}.container{flex-direction:column;gap:1.5rem;max-width:1200px;margin:0 auto;padding:1rem;display:flex}.app button{border:1px solid var(--border-color);background-color:var(--button-bg);color:var(--button-text);cursor:pointer;border-radius:4px;padding:.4rem .9rem;font-family:inherit;font-size:.95rem}.app button:disabled{opacity:.5;cursor:not-allowed}.app select{border:1px solid var(--border-color);background-color:var(--button-bg);color:var(--button-text);border-radius:4px;padding:.35rem;font-family:inherit;font-size:.95rem}.title{color:var(--text-color);font-size:1.5rem;font-weight:700}.grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=1024px){.grid{grid-template-columns:1fr 1fr}}.error-banner{border:1px solid var(--error-border);background-color:var(--error-bg);color:var(--error-text);border-radius:4px;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;display:flex}.error-banner-text{flex:1}.app .error-banner-dismiss{color:inherit;background:0 0;border:none;padding:0 .25rem;font-size:1.25rem;line-height:1}.status-bar{color:var(--muted-color);flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.85rem;display:flex}.status-item{white-space:nowrap}.status-connected{color:var(--ok-color);font-weight:700}.status-connecting{font-weight:700}.status-unsupported,.status-warning{color:var(--warning-color);font-weight:700}.controls{border:1px solid var(--border-color);background-color:var(--bg-color);border-radius:4px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.control-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.checkbox-label,.speed-label{color:var(--muted-color);white-space:nowrap;align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.frame-counter{color:var(--muted-color);white-space:nowrap;font-size:.85rem}.aldl-table,.bit-fields-table,.o2-grid-table{border-collapse:collapse;width:100%;color:var(--text-color);background-color:var(--bg-color);margin-bottom:1rem;font-size:.85rem}.aldl-table th,.aldl-table td,.bit-fields-table th,.bit-fields-table td,.o2-grid-table th,.o2-grid-table td{border:1px solid var(--border-color);text-align:center;padding:.125rem .375rem}.aldl-table th:first-child,.aldl-table td:first-child{text-align:right;min-width:4.25rem;padding-right:.5rem}.aldl-table th:last-child{min-width:4.25rem}.aldl-table th,.bit-fields-table th,.o2-grid-table th{background-color:var(--header-bg);font-size:.85rem;font-weight:700}.aldl-table thead th{cursor:pointer}.aldl-table thead th:first-child,.aldl-table thead th:last-child{cursor:default}.header-offset,.header-time{line-height:1.2;display:block}.header-time{color:var(--muted-color);font-size:.7rem;font-weight:400}.aldl-table td.selected,.aldl-table th.selected{background-color:var(--selected-bg)}.no-malfunctions{color:var(--muted-color);margin:0;font-size:.85rem}.pid-toggle-buttons{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.app .pid-toggle-buttons button{cursor:pointer;background-color:var(--button-bg);color:var(--button-text);border:2px solid #0000;border-radius:4px;outline:none;padding:.5rem 1rem}.pid-toggle-buttons button:focus{box-shadow:none;outline:none}.app .pid-toggle-buttons button.active{background-color:var(--button-active-bg);color:var(--button-active-text)}.bit-fields-table tr.selected{background-color:var(--selected-bg)}.grid-view-buttons{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.app .grid-view-buttons button.active{background-color:var(--button-active-bg);color:var(--button-active-text)}.o2-grid-table td{min-width:1rem}.o2-grid-table td.current{background-color:var(--current-bg);font-weight:700}.axis-label{text-align:right;font-weight:700}.pagination-controls{grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1rem;display:grid}.app .pagination-controls button{min-width:40px;font-size:1rem}.pagination-controls button:first-child{justify-self:start}.pagination-controls button:last-child{justify-self:end}.pagination-controls span{color:var(--text-color);text-align:center;font-size:1rem}.pid-chart-container{border:1px solid var(--border-color);background-color:var(--bg-color);border-radius:4px;padding:1rem}.chart-container{height:300px;margin-top:1rem;position:relative}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=768px){.container{gap:1rem;padding:.5rem}.controls{flex-direction:column;align-items:stretch;padding:.5rem}.control-group{justify-content:center}.grid{gap:1rem}.pid-toggle-buttons{justify-content:center}.app .pid-toggle-buttons button{padding:.4rem .8rem;font-size:.9rem}.aldl-table,.bit-fields-table,.o2-grid-table{font-size:.8rem}.aldl-table th,.aldl-table td,.bit-fields-table th,.bit-fields-table td,.o2-grid-table th,.o2-grid-table td{min-width:1rem;padding:.125rem .25rem}.aldl-table th:first-child,.aldl-table td:first-child,.aldl-table th:last-child{min-width:2.5rem}}
