.world-sessions { scroll-margin-top: 5rem; }
.world-sessions p { margin: 1rem 0; max-width: 100ch; }
.world-sessions-links { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0; }
.world-sessions a { color: var(--fxmd-cyan); text-decoration: underline; text-underline-offset: .2em; }
.world-sessions-controls { display: flex; flex-wrap: wrap; align-items: end; gap: .75rem; margin: 1.5rem 0; }
.world-sessions-controls label { display: grid; gap: .4rem; flex: 1 1 12rem; min-width: 0; color: var(--fxmd-text); }
.world-sessions-input, .world-sessions-controls button { width: 100%; min-height: 44px; padding: .65rem; background: var(--fxmd-surface); color: var(--fxmd-text-strong); border: 1px solid var(--fxmd-border); border-radius: .4rem; font: inherit; }
.world-sessions-controls button { width: auto; color: var(--fxmd-cyan); cursor: pointer; }
.world-sessions-scroll { max-height: 42rem; overflow: auto; border: 1px solid var(--fxmd-border); border-radius: .5rem; }
.world-sessions-table { width: 100%; border-collapse: collapse; text-align: left; font-size: .85rem; }
.world-sessions-table caption { padding: 1rem; text-align: left; color: var(--fxmd-text-muted); }
.world-sessions-table th, .world-sessions-table td { padding: .8rem; border-bottom: 1px solid var(--fxmd-border); vertical-align: top; min-width: 10rem; }
.world-sessions-table thead th { position: sticky; top: 0; background: var(--fxmd-surface); color: var(--fxmd-text-strong); z-index: 1; }
.world-sessions-table tbody th { font-weight: 600; }
.world-sessions-table span, .world-sessions-table small { display: block; margin-top: .35rem; }
.world-sessions-table small { color: var(--fxmd-text-muted); line-height: 1.5; }
.world-sessions-table td:nth-child(3), .world-sessions-table td:nth-child(4), .world-sessions-table td:nth-child(5) { font-family: var(--fxmd-font-mono, monospace); font-variant-numeric: tabular-nums; }
.world-country-coverage { margin-top: 1.5rem; }
#registered-market-venues { margin-top: 2rem; scroll-margin-top: 5rem; }
.world-country-coverage summary { min-height: 44px; cursor: pointer; color: var(--fxmd-cyan); }
.world-sessions [hidden] { display: none; }
@media (max-width: 640px) { .world-sessions-controls label { flex-basis: 100%; } .world-sessions-controls button { width: 100%; } .world-sessions-table th, .world-sessions-table td { padding: .65rem; } }
