.kronos-module-mount {
  border-top: 1px solid #cbd5e1;
  background: #f8fafc;
  color: #172235;
  overflow: hidden;
}
.kronos-module-mount[hidden] { display: none; }
.kronos-module-loading, .kronos-module-unavailable { padding: 22px 14px; color: #64748b; font-size: 12px; line-height: 1.6; }
.kronos-module-unavailable strong { display: block; color: #0f2f55; font-size: 14px; }
.kronos-module-unavailable p { margin: 5px 0 0; }
.kronos-module-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 13px 14px; border-bottom: 1px solid #cbd5e1; background: #eef4fa; }
.kronos-module-head span, .kronos-module-head strong { display: block; }
.kronos-module-head span { color: #52677f; font-size: 9px; font-weight: 800; }
.kronos-module-head strong { margin-top: 3px; color: #0f2f55; font-size: 17px; overflow-wrap: anywhere; }
.kronos-module-head em { flex: 0 0 auto; padding: 5px 8px; border: 1px solid #9db6cf; border-radius: 3px; color: #174a82; font-size: 10px; font-style: normal; font-weight: 800; font-variant-numeric: tabular-nums; }
.kronos-module-head em.stale { border-color: #d4ad62; background: #fff8e8; color: #8a5a00; }
.kronos-module-warning { padding: 8px 14px; border-bottom: 1px solid #e2bd72; background: #fff8e8; color: #8a5a00; font-size: 10px; line-height: 1.5; }
.kronos-module-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-bottom: 1px solid #cbd5e1; background: #fff; }
.kronos-module-summary.compact { border: 1px solid #dbe3ed; }
.kronos-module-metric { min-width: 0; padding: 10px 11px; border-right: 1px solid #dbe3ed; }
.kronos-module-metric:last-child { border-right: 0; }
.kronos-module-metric span, .kronos-module-metric strong, .kronos-module-metric small { display: block; min-width: 0; overflow-wrap: anywhere; }
.kronos-module-metric span { color: #64748b; font-size: 9px; font-weight: 800; }
.kronos-module-metric strong { margin-top: 4px; color: #0f2f55; font-size: 16px; font-variant-numeric: tabular-nums; }
.kronos-module-metric small { margin-top: 3px; color: #64748b; font-size: 9px; line-height: 1.35; }
.kronos-module-band { padding: 12px 14px 14px; border-top: 1px solid #cbd5e1; background: #f8fafc; }
.kronos-module-band.live { border-top: 3px solid #174a82; background: #f2f7fc; }
.kronos-module-band.unavailable { background: #fbfcfe; }
.kronos-module-band.unavailable p { margin: 7px 0 0; color: #64748b; font-size: 10px; line-height: 1.55; }
.kronos-module-band-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.kronos-module-band-head strong { color: #0f2f55; font-size: 14px; }
.kronos-module-band-head span { color: #52677f; font-size: 10px; font-weight: 700; text-align: right; overflow-wrap: anywhere; }
.kronos-module-band h4 { margin: 12px 0 6px; color: #174a82; font-size: 11px; }
.kronos-module-layers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #dbe3ed; border-left: 1px solid #dbe3ed; background: #fff; }
.kronos-module-layers article { min-width: 0; padding: 0 9px 9px; border-right: 1px solid #dbe3ed; border-bottom: 1px solid #dbe3ed; }
.kronos-module-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.kronos-module-split > div { min-width: 0; }
.kronos-module-fields { border-top: 1px solid #dbe3ed; border-left: 1px solid #dbe3ed; background: #fff; }
.kronos-module-fields > div { min-width: 0; display: grid; grid-template-columns: minmax(104px, .36fr) minmax(0, 1fr); border-right: 1px solid #dbe3ed; border-bottom: 1px solid #dbe3ed; }
.kronos-module-fields span, .kronos-module-fields b { min-width: 0; padding: 5px 7px; overflow-wrap: anywhere; }
.kronos-module-fields span { color: #64748b; font-size: 9px; font-weight: 700; }
.kronos-module-fields b { border-left: 1px solid #e2e8f0; color: #334155; font-size: 9px; font-weight: 700; line-height: 1.42; font-variant-numeric: tabular-nums; }
.kronos-module-table-scroll { max-width: 100%; overflow: auto; border: 1px solid #dbe3ed; background: #fff; }
.kronos-module-table { width: 100%; min-width: 620px; border-collapse: collapse; color: #334155; font-size: 9px; font-variant-numeric: tabular-nums; }
.kronos-module-table th, .kronos-module-table td { padding: 6px 7px; border-right: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; text-align: right; white-space: nowrap; }
.kronos-module-table th:first-child, .kronos-module-table td:first-child { text-align: left; }
.kronos-module-table th { position: sticky; top: 0; z-index: 1; background: #eef4fa; color: #52677f; font-weight: 800; }
.kronos-module-table tr:last-child td { border-bottom: 0; }
.kronos-module-table.forecast { min-width: 560px; }
.kronos-module-table.matches { min-width: 860px; }
.kronos-module-note { margin: 9px 0 0; color: #64748b; font-size: 9px; line-height: 1.5; }
.kronos-module-limitations { margin-top: 10px; padding: 8px 10px; border-left: 3px solid #d4ad62; background: #fff8e8; }
.kronos-module-limitations h4 { margin: 0 0 4px; color: #8a5a00; }
.kronos-module-limitations ul { margin: 0; padding-left: 18px; color: #7a5a19; font-size: 9px; line-height: 1.55; }
.kronos-module-raw { margin-top: 9px; border: 1px solid #cbd5e1; background: #fff; }
.kronos-module-raw summary { padding: 7px 9px; color: #174a82; font-size: 10px; font-weight: 800; cursor: pointer; }
.kronos-module-raw pre { max-height: 360px; margin: 0; overflow: auto; padding: 9px; border-top: 1px solid #dbe3ed; background: #101820; color: #dce7f2; font: 10px/1.5 Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.kronos-module-empty { padding: 10px; border: 1px solid #dbe3ed; color: #64748b; font-size: 10px; }
.kronos-module-foot { padding: 10px 14px 12px; border-top: 1px solid #cbd5e1; color: #64748b; font-size: 9px; line-height: 1.5; }

@media (max-width: 1000px) {
  .kronos-module-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kronos-module-metric:nth-child(3n) { border-right: 0; }
  .kronos-module-layers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .kronos-module-head { padding: 10px 8px; flex-direction: column; gap: 6px; }
  .kronos-module-head em { align-self: flex-start; }
  .kronos-module-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kronos-module-metric { padding: 8px; border-bottom: 1px solid #dbe3ed; }
  .kronos-module-metric:nth-child(2n) { border-right: 0; }
  .kronos-module-metric strong { font-size: 13px; }
  .kronos-module-band { padding: 10px 7px 11px; }
  .kronos-module-band-head { align-items: flex-start; flex-direction: column; gap: 3px; }
  .kronos-module-band-head span { text-align: left; }
  .kronos-module-layers, .kronos-module-split { grid-template-columns: 1fr; }
  .kronos-module-split { gap: 4px; }
  .kronos-module-fields > div { grid-template-columns: minmax(88px, .38fr) minmax(0, 1fr); }
  .kronos-module-raw pre { max-height: 280px; font-size: 9px; }
}

.kronos-module-path-state { padding: 8px 14px; border-bottom: 1px solid #cbd5e1; color: #334155; font-size: 10px; font-weight: 700; line-height: 1.5; }
.kronos-module-path-state.fresh { background: #eef8f3; color: #166c4d; }
.kronos-module-path-state.intraday { background: #eef6ff; color: #174a82; }
.kronos-module-path-state.pending { background: #fff8e8; color: #8a5a00; }
.kronos-module-path-state.error { background: #fff1f0; color: #b42318; }