:root{background:#020607;color:#f2f4f0}
body{min-height:100vh;padding:0;background:radial-gradient(circle at 82% 100%,#03233a 0,transparent 31%),linear-gradient(135deg,#010405 3%,#06100f 57%,#020505 100%)}
.heatmap-board{display:flex;flex-direction:column;max-width:none;min-height:100vh;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.heatmap-commandbar{display:grid;grid-template-columns:318px minmax(0,1fr) auto;align-items:stretch;min-height:90px;border-bottom:1px solid #8c680f;background:linear-gradient(100deg,#020506,#070d0e 56%,#030608)}
.heatmap-brand{display:flex;align-items:center;gap:15px;padding:0 25px;border-right:1px solid #3e351c;color:#efba3e;letter-spacing:.095em}.heatmap-brand b{font-family:Georgia,serif;font-size:47px;font-style:italic;line-height:1;letter-spacing:-.15em;text-shadow:0 0 16px #e5a30055}.heatmap-brand span{font-size:22px;font-weight:900}.heatmap-brand small{display:block;margin-top:4px;font-size:10px;font-weight:800;letter-spacing:.19em}
.heatmap-title{display:flex;align-items:center;gap:16px;padding:0 28px}.heatmap-title strong{font-size:25px;letter-spacing:.055em}.heatmap-title small{color:#54e28b;font-size:12px;font-weight:900;letter-spacing:.08em}.heatmap-title small::before{content:"";display:inline-block;width:10px;height:10px;margin-right:9px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor}.heatmap-title>span{padding-left:16px;border-left:1px solid #313b37;color:#9ea7a3;font-size:12px;letter-spacing:.05em}
.heatmap-controls{display:flex;align-items:center;gap:26px;padding:0 25px}.heatmap-tabs{display:flex;gap:0;margin:0;border:1px solid #39423f;border-radius:6px;overflow:hidden}.heatmap-tabs button{min-width:116px;padding:13px 18px;border:0;border-right:1px solid #33403a;border-radius:0;background:#070c0d;color:#aeb7b1;font-size:11px}.heatmap-tabs button:last-child{border-right:0}.heatmap-tabs button[aria-pressed=true]{border-color:#a77717;background:linear-gradient(180deg,#241e0b,#100f09);box-shadow:inset 0 0 0 1px #d8a629;color:#ffd15b}.heatmap-legend{position:relative;display:grid;grid-template-columns:auto 55px 55px auto;gap:8px;align-items:center;padding-bottom:14px;color:#f35755;font-size:12px;font-weight:800}.heatmap-legend i{display:block;width:55px;height:12px;margin:0;border-radius:0;background:linear-gradient(90deg,#ad1f27,#e64950)}.heatmap-legend i:nth-of-type(2){background:linear-gradient(90deg,#1c8a54,#54df8d)}.heatmap-legend span:last-of-type{color:#52df8d}.heatmap-legend small{position:absolute;bottom:0;left:50%;transform:translateX(-50%);color:#afb5b0;font-size:10px}
.heatmap-canvas{position:relative;display:grid;flex:1;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(88px,1fr);grid-auto-flow:row dense;gap:7px;padding:15px 16px 10px;border:1px solid #9d761b;border-top:0;border-radius:0 0 7px 7px;background:linear-gradient(145deg,#061110,#020708 67%,#061018);overflow:hidden}.heatmap-canvas::after{content:"";position:absolute;right:0;bottom:0;width:34%;height:124px;pointer-events:none;background-image:radial-gradient(#0b88d1 1px,transparent 1.4px);background-size:12px 12px;opacity:.45;mask-image:linear-gradient(90deg,transparent,#000 25%,#000);-webkit-mask-image:linear-gradient(90deg,transparent,#000 25%,#000)}
.map-sector{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:0;border-radius:0;background:transparent}.map-sector>header{min-height:33px;padding:5px 8px;border:0;background:transparent}.map-sector>header strong{font-size:13px;letter-spacing:.03em}.map-sector>header span{font-size:12px}.map-sector-tiles{min-height:0;padding:0;gap:4px;background:transparent}.map-sector--1 .map-sector-tiles{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}.map-sector--2 .map-sector-tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}.map-sector--3 .map-sector-tiles{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}.map-sector--4 .map-sector-tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.map-sector--5 .map-sector-tiles{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}
.map-sector-technology{grid-column:span 4;grid-row:span 3}.map-sector-financials{grid-column:span 3;grid-row:span 3}.map-sector-consumer-discretionary,.map-sector-consumer-cyclical{grid-column:span 3;grid-row:span 3}.map-sector-consumer-staples,.map-sector-consumer-defensive{grid-column:span 2;grid-row:span 3}.map-sector-communication-services{grid-column:span 4;grid-row:span 2}.map-sector-industrials{grid-column:span 3;grid-row:span 2}.map-sector-health-care,.map-sector-healthcare{grid-column:span 3;grid-row:span 2}.map-sector-energy{grid-column:span 2;grid-row:span 2}.map-sector-utilities,.map-sector-real-estate,.map-sector-materials,.map-sector-basic-materials{grid-column:span 3;grid-row:span 1}.map-sector-technology .map-sector-tiles{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.map-sector-technology .heatmap-tile.is-featured{grid-column:span 2;grid-row:span 2}.map-sector-technology .heatmap-tile:last-child{grid-column:span 2}.map-sector-communication-services .map-sector-tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.map-sector-communication-services .heatmap-tile:first-child{grid-row:span 2}
.heatmap-tile{min-height:0;padding:16px 18px;border:1px solid #554847;border-radius:4px;background:linear-gradient(145deg,color-mix(in srgb,var(--tile-fill,#17201c) 94%,#000),var(--tile-fill,#17201c));box-shadow:inset 0 1px #ffffff14,inset 0 -22px 46px #0002;color:#f8faf7}.heatmap-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff09,transparent 45%);pointer-events:none}.heatmap-tile:hover{border-color:#d2a632;transform:translateY(-1px) scale(1.008)}.heatmap-tile strong{position:relative;z-index:1;font-size:24px;letter-spacing:.02em}.heatmap-tile small{position:relative;z-index:1;margin-top:7px;font-size:11px}.heatmap-tile span{z-index:1;bottom:16px;left:18px;font-size:20px}.heatmap-tile.is-featured{padding:31px}.heatmap-tile.is-featured strong{font-size:39px}.heatmap-tile.is-featured small{margin-top:13px;font-size:13px}.heatmap-tile.is-featured span{bottom:28px;left:31px;font-size:28px}.heatmap-tile.is-sector-anchor{padding:31px}.heatmap-tile.is-sector-anchor strong{font-size:37px}.heatmap-tile.is-sector-anchor small{margin-top:12px;font-size:13px}.heatmap-tile.is-sector-anchor span{bottom:28px;left:31px;font-size:28px}.heatmap-tile.is-unavailable{background:#17201c}.heatmap-tile[aria-pressed=true]{border-color:#f2bc35;box-shadow:inset 0 0 0 1px #ffe364,0 0 18px #f2c24c55}
.tile-mark{position:relative;z-index:1;display:inline-grid;place-items:center;width:33px;height:33px;margin-bottom:10px;border-radius:8px;color:#fff;font-size:25px;font-style:normal;font-weight:900;line-height:1}.is-featured .tile-mark{width:50px;height:50px;font-size:37px}.mark-nvda{color:#9ee22d;text-shadow:0 0 12px #88b92a}.mark-msft{color:#fff;background:conic-gradient(#7cbb00 0 25%,#ffb900 0 50%,#f25022 0 75%,#00a4ef 0)}.mark-aapl{color:#d9e1db}.mark-amzn{color:#ffb93d}.mark-tsla{color:#fff}.mark-googl{color:#5089f6}.mark-meta{color:#3e8cff}.sector-glyph{position:absolute;z-index:0;right:24px;bottom:18px;color:#ffffff0c;font-size:72px;line-height:1;font-style:normal;pointer-events:none}.is-sector-anchor .sector-glyph{font-size:92px}
.heatmap-detail{display:flex;align-items:center;min-height:50px;margin:8px 16px 18px;padding:12px 22px;border-color:#8c6b1c;border-radius:5px;background:linear-gradient(90deg,#07100e,#0b0d0c);font-size:14px}.heatmap-detail::after{content:"MARKET STATUS  •  MARKET OPEN";margin-left:auto;color:#55df88;font-size:11px;font-weight:900;letter-spacing:.08em}.heatmap-detail b{color:#58dd87}
.heatmap-loading,.heatmap-empty{color:#aeb7b1}
@media(max-width:1260px){.heatmap-commandbar{grid-template-columns:255px 1fr}.heatmap-controls{grid-column:1/-1;justify-content:space-between;border-top:1px solid #2b342f;padding:10px 20px}.heatmap-canvas{grid-template-columns:repeat(8,minmax(0,1fr))}.map-sector-technology,.map-sector-financials,.map-sector-consumer-discretionary,.map-sector-consumer-cyclical,.map-sector-consumer-staples,.map-sector-consumer-defensive,.map-sector-communication-services,.map-sector-industrials,.map-sector-health-care,.map-sector-healthcare,.map-sector-energy{grid-column:span 4;grid-row:span 2}.map-sector-technology{grid-row:span 3}.map-sector-utilities,.map-sector-real-estate,.map-sector-materials,.map-sector-basic-materials{grid-column:span 2}}
@media(max-width:760px){.heatmap-commandbar{display:block}.heatmap-brand,.heatmap-title{min-height:74px;border-right:0;border-bottom:1px solid #343a34}.heatmap-brand{padding:0 18px}.heatmap-brand b{font-size:39px}.heatmap-brand span{font-size:19px}.heatmap-title{padding:0 18px;flex-wrap:wrap;gap:9px}.heatmap-title strong{font-size:20px}.heatmap-title>span{padding-left:9px;font-size:10px}.heatmap-controls{display:block;padding:12px}.heatmap-tabs button{min-width:0;flex:1;padding:11px 7px;font-size:9px}.heatmap-legend{display:none}.heatmap-canvas{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:112px;padding:10px}.map-sector,.map-sector-technology,.map-sector-financials,.map-sector-consumer-discretionary,.map-sector-consumer-cyclical,.map-sector-consumer-staples,.map-sector-consumer-defensive,.map-sector-communication-services,.map-sector-industrials,.map-sector-health-care,.map-sector-healthcare,.map-sector-energy,.map-sector-utilities,.map-sector-real-estate,.map-sector-materials,.map-sector-basic-materials{grid-column:span 2;grid-row:span 2}.map-sector-technology{grid-row:span 3}.heatmap-tile,.heatmap-tile.is-sector-anchor{padding:16px}.heatmap-tile strong,.heatmap-tile.is-sector-anchor strong{font-size:23px}.heatmap-tile span,.heatmap-tile.is-sector-anchor span{bottom:15px;left:16px;font-size:20px}.heatmap-detail{margin:8px 10px 12px;padding:13px;font-size:12px}.heatmap-detail::after{display:none}}
@media(min-width:761px){.heatmap-commandbar{min-height:78px}.heatmap-brand{gap:12px;padding:0 20px}.heatmap-brand b{font-size:40px}.heatmap-brand span{font-size:19px}.heatmap-title{gap:12px;padding:0 23px}.heatmap-title strong{font-size:22px}.heatmap-controls{gap:20px;padding:0 20px}.heatmap-tabs button{min-width:104px;padding:11px 15px;font-size:10px}.heatmap-canvas{gap:6px;padding:11px 12px 8px}.map-sector>header{min-height:29px;padding:4px 6px}.map-sector>header strong{font-size:11px}.map-sector>header span{font-size:11px}.heatmap-tile{padding:12px 14px}.heatmap-tile strong{font-size:20px}.heatmap-tile small{margin-top:5px;font-size:10px}.heatmap-tile span{bottom:12px;left:14px;font-size:17px}.heatmap-tile.is-featured,.heatmap-tile.is-sector-anchor{padding:23px}.heatmap-tile.is-featured strong,.heatmap-tile.is-sector-anchor strong{font-size:31px}.heatmap-tile.is-featured small,.heatmap-tile.is-sector-anchor small{margin-top:9px;font-size:12px}.heatmap-tile.is-featured span,.heatmap-tile.is-sector-anchor span{bottom:21px;left:23px;font-size:23px}.tile-mark{width:27px;height:27px;margin-bottom:7px;font-size:20px}.is-featured .tile-mark{width:41px;height:41px;font-size:31px}.sector-glyph{right:18px;bottom:14px;font-size:58px}.is-sector-anchor .sector-glyph{font-size:74px}.heatmap-detail{min-height:43px;margin:6px 12px 12px;padding:10px 17px;font-size:12px}}

.heatmap-minimize{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border:1px solid #80611a;border-radius:4px;background:#090e0d;color:#e8ba4a;font-size:10px;font-weight:900;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;white-space:nowrap}.heatmap-minimize:hover{border-color:#e4b23b;background:#1c1709;color:#ffe17a}.heatmap-minimize:focus-visible{outline:2px solid #ffe17a;outline-offset:3px}@media(max-width:760px){.heatmap-minimize{width:100%;margin-top:10px}}

/* The declared ticker catalogue intentionally renders a featured name with a
   dense ring of smaller sector peers. These sizes do not depend on an index. */
.heatmap-canvas{grid-auto-rows:minmax(76px,1fr);overflow:visible}
.map-sector-technology{grid-row:span 4}.map-sector-financials,.map-sector-consumer-discretionary,.map-sector-consumer-cyclical{grid-row:span 4}.map-sector-consumer-staples,.map-sector-consumer-defensive,.map-sector-communication-services,.map-sector-industrials,.map-sector-health-care,.map-sector-healthcare,.map-sector-energy{grid-row:span 3}.map-sector-utilities,.map-sector-real-estate,.map-sector-materials,.map-sector-basic-materials{grid-row:span 3}
.map-sector--dense .map-sector-tiles{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));grid-auto-flow:dense}.map-sector--extra-dense .map-sector-tiles{grid-template-rows:repeat(4,minmax(0,1fr))}.map-sector--dense .heatmap-tile{padding:8px 9px}.map-sector--dense .heatmap-tile strong{font-size:15px}.map-sector--dense .heatmap-tile small{display:none}.map-sector--dense .heatmap-tile span{bottom:8px;left:9px;font-size:13px}.map-sector--dense .heatmap-tile.is-featured{padding:15px}.map-sector--dense .heatmap-tile.is-featured strong{font-size:25px}.map-sector--dense .heatmap-tile.is-featured span{bottom:14px;left:15px;font-size:18px}.map-sector--dense .tile-mark{width:22px;height:22px;margin-bottom:5px;font-size:16px}.map-sector--dense .is-featured .tile-mark{width:34px;height:34px;font-size:25px}.map-sector--dense .sector-glyph{right:12px;bottom:10px;font-size:48px}.map-sector--dense .is-sector-anchor .sector-glyph{font-size:58px}
@media(max-width:1260px){.map-sector-technology,.map-sector-financials,.map-sector-consumer-discretionary,.map-sector-consumer-cyclical{grid-column:span 4;grid-row:span 4}.map-sector-consumer-staples,.map-sector-consumer-defensive,.map-sector-communication-services,.map-sector-industrials,.map-sector-health-care,.map-sector-healthcare,.map-sector-energy{grid-column:span 4;grid-row:span 3}.map-sector-utilities,.map-sector-real-estate,.map-sector-materials,.map-sector-basic-materials{grid-column:span 4;grid-row:span 3}}
@media(max-width:760px){.heatmap-canvas{grid-auto-rows:86px}.map-sector,.map-sector-technology,.map-sector-financials,.map-sector-consumer-discretionary,.map-sector-consumer-cyclical,.map-sector-consumer-staples,.map-sector-consumer-defensive,.map-sector-communication-services,.map-sector-industrials,.map-sector-health-care,.map-sector-healthcare,.map-sector-energy,.map-sector-utilities,.map-sector-real-estate,.map-sector-materials,.map-sector-basic-materials{grid-column:span 2;grid-row:span 3}.map-sector--extra-dense{grid-row:span 4}.map-sector--dense .heatmap-tile strong{font-size:13px}.map-sector--dense .heatmap-tile.is-featured strong{font-size:21px}}
