/* The MW Desk: Markets / Hyperscale / Legislation section.
   Extends /css/styles.css. Uses its CSS variables, with fallbacks so it renders standalone.
   All classes are prefixed mx- to avoid collisions with the main site redesign. */
.mx { --mx-amber: var(--amber, #e6b84d); --mx-line: var(--line, #24303a); --mx-panel: var(--bg-panel, #10151b);
      --mx-elev: var(--bg-elev, #0c0f13); --mx-muted: var(--muted, #8d948a); --mx-signal: var(--signal, #7dff6b);
      --mx-alert: var(--alert, #ff7a55); --mx-link: var(--link, #8fd4ff); --mx-white: var(--white, #f3f1e8);
      --mx-mono: var(--font-mono, "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace); }
.mx-tabs { display:flex; flex-wrap:wrap; gap:.35rem; margin:0 0 1.4rem; border-bottom:1px solid var(--mx-line); }
.mx-tabs a { font-family:var(--mx-mono); font-size:.76rem; letter-spacing:.08em; text-transform:uppercase; text-decoration:none;
  color:var(--mx-muted); padding:.6rem .85rem; border:1px solid transparent; border-bottom:none; margin-bottom:-1px; }
.mx-tabs a:hover { color:var(--mx-white); }
.mx-tabs a[aria-current="page"] { color:var(--mx-amber); border-color:var(--mx-line); background:var(--mx-panel); }
.mx-hero { padding:2.6rem 0 1.2rem; }
.mx-hero h1 { max-width: 18ch; }
.mx-lede { font-size:1.12rem; color:var(--text, #e7e5db); max-width:68ch; }
.mx-kicker { font-family:var(--mx-mono); font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--mx-amber); margin-bottom:.7rem; }
.mx-meta { font-family:var(--mx-mono); font-size:.74rem; color:var(--mx-muted); letter-spacing:.03em; }
.mx-two { display:grid; grid-template-columns: 1fr 1fr; gap:1.1rem; }
.mx-card { background:var(--mx-panel); border:1px solid var(--mx-line); padding:1.15rem 1.2rem; border-radius:2px; }
.mx-card h2, .mx-card h3 { margin-top:0; }
.mx-quote { border-left:3px solid var(--mx-amber); padding:.2rem 0 .2rem 1rem; margin:.8rem 0; color:var(--mx-white); font-size:.98rem; }
.mx-quote cite { display:block; font-style:normal; font-family:var(--mx-mono); font-size:.72rem; color:var(--mx-muted); margin-top:.4rem; }
.mx-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(250px, 1fr)); gap:.9rem; }
.mx-mcard { display:flex; flex-direction:column; gap:.45rem; background:var(--mx-panel); border:1px solid var(--mx-line); padding:1rem; text-decoration:none; color:inherit; transition:border-color .15s, transform .15s; }
.mx-mcard:hover { border-color:var(--mx-amber); transform:translateY(-1px); color:inherit; }
.mx-mcard h3 { font-size:1.02rem; margin:0; color:var(--mx-white); }
.mx-mcard p { font-size:.86rem; color:var(--mx-muted); margin:0; }
.mx-rank { font-family:var(--mx-mono); font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; color:var(--mx-muted); }
.mx-chip { display:inline-flex; align-items:center; gap:.35rem; font-family:var(--mx-mono); font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; padding:.18rem .5rem; border:1px solid var(--mx-line); border-radius:2px; white-space:nowrap; }
.mx-chip::before { content:""; width:.5rem; height:.5rem; border-radius:50%; background:currentColor; }
.mx-heating { color:var(--mx-signal); border-color:rgba(125,255,107,.35); }
.mx-cooling { color:var(--mx-link); border-color:rgba(143,212,255,.35); }
.mx-mixed { color:var(--mx-amber); border-color:rgba(230,184,77,.35); }
.mx-imp-high { color:var(--mx-alert); border-color:rgba(255,122,85,.4); }
.mx-imp-medium { color:var(--mx-amber); border-color:rgba(230,184,77,.35); }
.mx-imp-low { color:var(--mx-muted); }
.mx-row { display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; }
.mx-signals { counter-reset: sig; list-style:none; padding:0; margin:0; display:grid; gap:.8rem; }
.mx-signals li { counter-increment: sig; position:relative; padding:1rem 1rem 1rem 3.2rem; background:var(--mx-panel); border:1px solid var(--mx-line); }
.mx-signals li::before { content: counter(sig, decimal-leading-zero); position:absolute; left:1rem; top:1rem; font-family:var(--mx-mono); color:var(--mx-amber); font-weight:600; }
.mx-signals strong { color:var(--mx-white); }
.mx-facts { list-style:none; padding:0; margin:0; }
.mx-facts li { padding:.7rem 0; border-bottom:1px solid var(--mx-line); }
.mx-facts li:last-child { border-bottom:none; }
.mx-src { font-family:var(--mx-mono); font-size:.7rem; color:var(--mx-muted); margin-left:.25rem; white-space:normal; }
.mx-src a { color:var(--mx-muted); }
.mx-src a:hover { color:var(--mx-white); }
.mx-unc { font-family:var(--mx-mono); font-size:.64rem; letter-spacing:.06em; text-transform:uppercase; color:var(--mx-amber); border:1px dashed rgba(230,184,77,.5); padding:0 .3rem; margin-left:.3rem; }
.mx-signalbox { border:1px solid var(--mx-line); background:linear-gradient(180deg, rgba(230,184,77,.08), transparent 80%), var(--mx-panel); padding:1.2rem; }
.mx-signalbox .mx-chip { font-size:.78rem; }
.mx-notes { border:1px dashed var(--mx-line); padding:1.2rem; color:var(--mx-muted); background:rgba(255,255,255,.01); }
.mx-section { padding:1.6rem 0; }
.mx-section > h2 { display:flex; align-items:baseline; gap:.6rem; }
.mx-section > h2 small { font-family:var(--mx-mono); font-size:.72rem; color:var(--mx-muted); font-weight:400; letter-spacing:.04em; }
.mx-table-wrap { overflow-x:auto; border:1px solid var(--mx-line); background:var(--mx-elev); }
.mx-table { width:100%; border-collapse:collapse; font-size:.85rem; }
.mx-table th { position:sticky; top:0; background:var(--mx-panel); font-family:var(--mx-mono); font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; color:var(--mx-amber); text-align:left; padding:.6rem .65rem; border-bottom:1px solid var(--mx-line); white-space:nowrap; }
.mx-table th button { all:unset; cursor:pointer; }
.mx-table td { padding:.6rem .65rem; border-bottom:1px solid var(--mx-line); vertical-align:top; }
.mx-table tr:hover td { background:rgba(230,184,77,.03); }
.mx-table td.mx-nowrap { white-space:nowrap; }
.mx-table .mx-sum { color:var(--mx-muted); font-size:.8rem; margin-top:.25rem; max-width:60ch; }
.mx-filters { display:grid; grid-template-columns: 2fr repeat(5, 1fr); gap:.6rem; margin:0 0 .8rem; }
.mx-filters label { font-family:var(--mx-mono); font-size:.66rem; letter-spacing:.08em; text-transform:uppercase; color:var(--mx-muted); display:block; }
.mx-filters input, .mx-filters select { display:block; width:100%; margin-top:.25rem; min-height:40px; background:#08090c; border:1px solid var(--line-strong, #3a4a56); color:var(--text, #e7e5db); padding:.45rem .5rem; font:inherit; font-size:.86rem; border-radius:0; }
.mx-statbar { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px,1fr)); gap:.6rem; margin:1rem 0; }
.mx-stat { background:var(--mx-panel); border:1px solid var(--mx-line); padding:.8rem; }
.mx-stat b { display:block; font-family:var(--mx-mono); font-size:1.5rem; color:var(--mx-white); line-height:1.1; }
.mx-stat span { font-family:var(--mx-mono); font-size:.66rem; letter-spacing:.08em; text-transform:uppercase; color:var(--mx-muted); }
.mx-btn { display:inline-block; font-family:var(--mx-mono); font-size:.76rem; letter-spacing:.06em; text-transform:uppercase; padding:.55rem .9rem; border:1px solid var(--mx-amber); color:var(--mx-amber); background:transparent; cursor:pointer; text-decoration:none; }
.mx-btn:hover { background:rgba(230,184,77,.12); color:var(--mx-white); }
.mx-sidebar { display:grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); gap:1.4rem; align-items:start; }
.mx-aside { position:sticky; top:6rem; display:grid; gap:.9rem; }
.mx-aside h3 { font-size:.8rem; font-family:var(--mx-mono); letter-spacing:.1em; text-transform:uppercase; color:var(--mx-amber); }
.mx-aside ul { list-style:none; margin:0; padding:0; font-size:.86rem; }
.mx-aside li { padding:.35rem 0; border-bottom:1px solid var(--mx-line); }
.mx-breadcrumb { font-family:var(--mx-mono); font-size:.72rem; color:var(--mx-muted); letter-spacing:.04em; margin-bottom:.8rem; }
.mx-breadcrumb a { color:var(--mx-muted); }
.mx-legend { display:flex; flex-wrap:wrap; gap:.5rem; margin:.4rem 0 1rem; }
@media (max-width: 860px) {
  .mx-two, .mx-sidebar { grid-template-columns: 1fr; }
  .mx-aside { position:static; }
  .mx-filters { grid-template-columns: 1fr 1fr; }
  .mx-filters .mx-f-q { grid-column: 1 / -1; }
}
@media print { .mx-tabs, .mx-filters, .site-header, .ticker { display:none; } }

/* tracker toolbar (no inline styles: site CSP is style-src 'self') */
.mx-toolbar{justify-content:space-between;margin-bottom:.6rem}
#mx-status{margin:0}
