.log-page { width: min(1400px, calc(100% - 32px)); }
.log-page .hidden { display: none !important; }
.log-page h1 { margin-top: 0; font-size: 42px; letter-spacing: 0; }
.log-title-row, .log-detail-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.connection-status { padding-left: 16px; color: #aeb6c8; font-size: 13px; }
.connection-status::before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: #f0c36b; }
.connection-status.connected::before { background: #73e2a4; }
.connection-status.paused::before { background: #f0c36b; }
.connection-status.failed::before { background: #ff8d8d; }
.view-tabs { display: flex; gap: 4px; margin-top: 26px; border-bottom: 1px solid #293042; }
.view-tab { margin: 0 0 -1px; padding: 11px 15px; border: 1px solid transparent; border-radius: 6px 6px 0 0; color: #aeb6c8; background: transparent; }
.view-tab.active { border-color: #293042 #293042 #171b25; color: #eef1f7; background: #171b25; }
.runtime-view { min-height: 600px; border: 1px solid #293042; border-top: 0; background: #171b25; }
.log-toolbar { display: grid; grid-template-columns: 150px minmax(220px, 1fr) auto auto; align-items: end; gap: 12px; padding: 16px; border-bottom: 1px solid #293042; }
.log-toolbar input, .log-toolbar select { border-radius: 6px; }
.toggle-label { display: flex; align-items: center; align-self: center; gap: 8px; white-space: nowrap; }
.toggle-label input { width: 16px; height: 16px; }
.toolbar-actions { display: flex; align-items: center; gap: 8px; }
.toolbar-actions button { min-width: 62px; }
.danger { color: #ffd7d7; background: #592d37; }
.console-meta { display: flex; justify-content: space-between; padding: 10px 16px; color: #8994a9; font-size: 12px; }
.runtime-console { height: 580px; overflow: auto; border-top: 1px solid #222938; background: #0b0e14; color: #cbd3e6; font: 12px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.log-line { display: grid; grid-template-columns: 155px 76px minmax(160px, 250px) minmax(300px, 1fr); min-width: 840px; padding: 5px 12px; border-bottom: 1px solid #151a24; }
.log-line:hover { background: #141a24; }
.log-line time { color: #738099; }
.log-level { color: #9eafff; font-weight: 700; }
.log-logger { overflow: hidden; color: #8793a9; text-overflow: ellipsis; white-space: nowrap; }
.log-message { padding-left: 14px; color: #d9deea; white-space: pre-wrap; overflow-wrap: anywhere; }
.level-warning .log-level, .level-warning .log-message { color: #f0c36b; }
.level-error .log-level, .level-error .log-message, .level-critical .log-level, .level-critical .log-message { color: #ff9e9e; }
.runtime-view > .empty-state { margin: 80px auto; width: min(420px, calc(100% - 32px)); }
.log-layout { display: grid; grid-template-columns: 320px minmax(0, 1fr); min-height: 600px; border: 1px solid #293042; border-top: 0; overflow: hidden; background: #171b25; }
.log-sidebar { border-right: 1px solid #293042; background: #11151e; }
.sidebar-head { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; border-bottom: 1px solid #293042; }
.task-list { display: grid; max-height: 720px; overflow: auto; }
.task-log { width: 100%; margin: 0; padding: 14px 16px; border-bottom: 1px solid #293042; border-radius: 0; color: #eef1f7; background: transparent; text-align: left; }
.task-log:hover, .task-log.active { background: #232a3a; }
.task-log strong, .task-log span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.task-log span { margin-top: 5px; color: #8994a9; font-size: 12px; font-weight: 400; }
.log-content { min-width: 0; padding: 22px; }
.log-detail-head h2 { overflow-wrap: anywhere; }
.asr-sections { display: grid; gap: 10px; margin-top: 20px; }
.asr-section { border: 1px solid #30394d; border-radius: 6px; background: #11151e; }
.asr-section summary { padding: 14px; cursor: pointer; }
.asr-section pre { max-height: 380px; margin: 0; border-radius: 0 0 6px 6px; }
@media (max-width: 800px) {
  .log-layout { grid-template-columns: 1fr; }
  .log-sidebar { border-right: 0; border-bottom: 1px solid #293042; }
  .task-list { max-height: 260px; }
  .log-title-row, .log-detail-head { align-items: flex-start; flex-direction: column; }
  .log-toolbar { grid-template-columns: 1fr 1fr; }
  .search-field { grid-column: 1 / -1; grid-row: 1; }
  .runtime-console { height: 520px; }
}
@media (max-width: 520px) {
  .log-toolbar { grid-template-columns: 1fr; }
  .search-field { grid-column: auto; grid-row: auto; }
  .toolbar-actions { justify-content: flex-start; }
}
