.log-category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.log-category { text-align: left; color: var(--text); border-color: var(--line); cursor: pointer; }
.log-category:hover, .log-category:focus-visible { border-color: var(--accent); }
.log-category:focus-visible { outline: 1px solid var(--accent); outline-offset: -2px; }
.log-category.is-selected { outline: 2px solid var(--accent); outline-offset: 2px; }
.log-category-mark { color: var(--accent); font-size: 18px; }
.log-category:disabled { cursor: wait; }
.log-category .market-source-head h3 { font-size: 16px; line-height: 1.25; }
.log-category p { margin: 7px 0 0; color: var(--muted); font-size: 12px; line-height: 1.4; }
.log-latest-label { display: block; margin-top: 12px; font-size: 12px; line-height: 1.35; color: var(--muted); }
.log-latest, .log-latest-empty { display: block; margin-top: 4px; font-size: 13px; line-height: 1.5; font-weight: 650; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.log-filters { margin-top: 20px; padding: 20px; }
.log-filter-fields { display: grid; grid-template-columns: repeat(2, minmax(125px, 1fr)) repeat(2, minmax(140px, 1.15fr)) minmax(120px, .8fr); gap: 12px; }
.log-filter-fields .field { min-width: 0; }
.log-filter-footer { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 16px; }
.log-filter-footer > div, .log-pagination > div { display: flex; align-items: center; gap: 10px; }
.log-all-selected { border-color: var(--accent); color: var(--accent); }
.log-health { margin: 0 0 14px; font-size: 12px; color: var(--muted); }
.log-warning, .log-error, .access-event-warning { color: #95551f; background: #fff5e8; border: 1px solid #ecd5b4; border-radius: 10px; padding: 12px 14px; font-size: 13px; }
.log-error[hidden], .access-event-warning[hidden] { display: none; }
.access-event-warning { margin: 0 0 16px; }
.log-table { min-width: 1030px; }
.log-table td { vertical-align: top; }
.log-table small, .log-item small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; overflow-wrap: anywhere; }
.log-time { width: 165px; font-variant-numeric: tabular-nums; }
.log-ip { max-width: 185px; overflow-wrap: anywhere; }
.log-path { min-width: 150px; max-width: 250px; overflow-wrap: anywhere; }
.log-request summary { color: var(--accent); cursor: pointer; white-space: nowrap; font-size: 12px; }
.log-request dl { margin: 10px 0 0; max-width: 240px; }
.log-request dt { color: var(--muted); font-size: 11px; }
.log-request dd { margin: 3px 0 9px; font-size: 12px; overflow-wrap: anywhere; }
.log-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; color: var(--muted); font-size: 12px; }
.log-pagination > label { display: flex; align-items: center; gap: 8px; }
.log-pagination .select { min-height: 36px; width: 82px; border-radius: 9px; padding: 0 8px; }
.log-pagination .btn { min-height: 36px; padding: 8px 12px; }
.log-mobile { display: none; }
@media (max-width: 1100px) {
  .log-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .log-filter-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .log-category-mark { display: none; }
  .log-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .log-filters { padding: 15px; margin-top: 16px; }
  .log-filter-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 10px; }
  .log-filter-fields .input, .log-filter-fields .select { min-height: 42px; padding: 0 9px; }
  .log-filter-footer { align-items: flex-start; flex-direction: column; }
  .log-filter-footer > div { width: 100%; }
  .log-filter-footer .btn { flex: 1; }
  .log-desktop { display: none; }
  .log-mobile { display: grid; gap: 12px; }
  .log-item { padding: 16px; }
  .log-item-head { display: flex; justify-content: space-between; gap: 12px; }
  .log-item-head > div { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; }
  .log-item-head strong { font-size: 14px; }
  .log-item-head span:not(.status-pill), .log-item > time { font-size: 11px; color: var(--muted); }
  .log-item > time { display: block; margin-top: 6px; }
  .log-item > dl { display: grid; gap: 11px; margin: 16px 0; }
  .log-item > dl > div { display: grid; grid-template-columns: 66px minmax(0, 1fr); gap: 10px; }
  .log-item > dl dt { font-size: 12px; color: var(--muted); }
  .log-item > dl dd { margin: 0; font-size: 12px; overflow-wrap: anywhere; }
  .log-pagination { flex-wrap: wrap; }
  .log-pagination > div { justify-content: space-between; flex: 1; white-space: nowrap; }
}
