/* Market desk extension. White editorial design, one Inter family and monochrome 8px controls. */
.market-strip{padding-top:10px;padding-bottom:9px;border-bottom:1px solid #e8e8e8}
.market-strip-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-height:29px}
.market-strip-title{font-size:11px;font-weight:700;color:#222}
.market-strip-help{font-size:10px;color:#595959}
.market-strip-bar a{font-size:11px;font-weight:700;color:var(--accent);margin-left:auto}
.market-strip-bar a:hover{opacity:.75}
.market-ticker{display:block;min-height:50px;overflow:hidden}
.market-ticker tv-ticker-tape,.market-tape-section tv-ticker-tape{display:block;width:100%;min-height:45px}
.market-disclaimer{font-size:11px;line-height:1.75;color:#555;margin:11px 0}
.market-disclaimer a,.market-source a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.market-desk{padding:48px 0 75px}
.market-intro h1{font:400 clamp(38px,5.5vw,72px)/1.17 var(--serif);letter-spacing:-.065em;margin:0 0 15px}
.market-intro>p:not(.obs-eyebrow){font-size:14px;color:#555;line-height:1.8;max-width:690px}
.market-intro-meta{border-top:1px solid #222;border-bottom:1px solid #e9e9e9;padding:15px 0;display:flex;flex-wrap:wrap;gap:12px 22px;font-size:10px;font-weight:700;color:#555;margin-top:22px}
.market-intro-meta a{color:var(--accent)}
.market-intro-meta a:first-of-type{margin-left:auto}
.market-tape-section{padding:13px 0 26px}
.market-live,.market-macro,.market-context{padding-top:52px}
.market-panel-grid{padding-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:23px}
.market-panel{border:1px solid #e5e5e5;border-radius:8px;padding:18px 16px 14px;min-width:0;overflow:hidden}
.market-panel h3{margin:0 0 17px;font:400 19px var(--serif);letter-spacing:-.03em}
.market-panel tv-market-data{display:block;min-height:355px;max-width:100%}
.tradingview-widget-copyright{font-size:10px;line-height:24px;color:#595959}
.tradingview-widget-copyright a{text-decoration:underline;color:#595959}
.macro-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:19px 0 0;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6}
.macro-card{padding:22px 13px 22px 0;display:flex;flex-direction:column;gap:7px;min-width:0}
.macro-card+.macro-card{border-left:1px solid #e6e6e6;padding-left:21px}
.macro-card>span{font-size:11px;font-weight:650;color:#444}
.macro-card>strong{font:400 clamp(25px,3vw,41px)/1.3 var(--serif);letter-spacing:-.06em;white-space:nowrap}
.macro-card>small{font-size:11px;line-height:1.6;color:#595959}
.macro-chart-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:32px 0 17px}
.macro-chart-heading h3{margin:0;font:400 21px var(--serif)}
.macro-selector{display:flex;flex-wrap:wrap;gap:7px}
#macro-chart{border:1px solid #e7e7e7;border-radius:8px;padding:14px 8px;min-height:390px;overflow:hidden}
#macro-chart svg{max-width:100%;height:auto}
#macro-chart figure{margin:0}
.market-source{font-size:11px;line-height:1.7;color:#595959;margin-top:15px}
.macro-fallback{list-style:none;margin:15px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.macro-fallback li{font-size:11px;color:#333;border:1px solid #e8e8e8;border-radius:8px;padding:12px}
.market-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:25px}
.market-context-grid article{border-top:1px solid #e8e8e8;padding-top:16px}
.market-context-grid h3{font:400 21px var(--serif);margin:0 0 10px}
.market-context-grid p{font-size:12px;color:#595959;line-height:1.8}
.market-context-grid a{font-size:11px;font-weight:700;color:var(--accent)}
.market-context-grid a:hover{opacity:.75}
@media(max-width:840px){.market-panel-grid{grid-template-columns:1fr}.market-context-grid{gap:15px}}
@media(max-width:620px){
.market-desk{padding-top:30px}
.market-intro-meta a{margin-left:0}
.market-strip{padding-top:7px}
.market-panel{padding:13px 11px}
.macro-card{padding-right:8px}
.macro-card+.macro-card{padding-left:9px}
.macro-card>strong{font-size:21px}
.macro-card>span,.macro-card>small{font-size:10px}
.macro-fallback{grid-template-columns:repeat(2,minmax(0,1fr))}
.market-context-grid{grid-template-columns:1fr}
.market-live,.market-macro,.market-context{padding-top:41px}
}

/* Source-backed, three-column metals and macro desks. */
.commodities-section,.reference-fx,.economic-events{padding-top:69px}
.commodities-section .obs-section-title,.reference-fx .obs-section-title,.economic-events .obs-section-title{margin-bottom:12px}
.commodity-grid{margin-top:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.commodity-stat{min-width:0;padding:26px 25px 22px;background:#fafafa;border-radius:8px;display:flex;flex-direction:column;gap:11px}
.commodity-stat-top{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:7px}
.commodity-stat-top span{font:600 12px var(--sans);color:#2a2a2a}
.commodity-stat-top small{font:500 10px var(--sans);color:#606060}
.commodity-stat>strong{font:400 clamp(29px,3.4vw,45px)/1.18 var(--serif);letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.commodity-stat p{font:450 11px/1.65 var(--sans);color:#565656;margin:auto 0 0}
.commodity-source-row{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:12px 22px;margin:18px 0 0}
.commodity-source-row p{font:450 11px/1.75 var(--sans);color:#555;margin:0}
.commodity-source-row a,.commodity-source-links a,.calendar-actions a{font-size:11px;font-weight:650;color:var(--accent);text-decoration:none}
.commodity-source-row a:hover,.commodity-source-links a:hover,.calendar-actions a:hover{text-decoration:underline}
.commodity-market-panel{background:#fafafa;border-radius:8px;padding:23px;margin-top:24px}
.commodity-market-panel tv-market-data{display:block;width:100%;min-height:330px;overflow:hidden}
.commodity-market-panel .market-disclaimer{margin-top:18px}
.commodity-source-links{display:flex;gap:13px 22px;flex-wrap:wrap;padding-top:10px}
.fx-reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:23px;border-top:1px solid #eaeaea;border-bottom:1px solid #eaeaea}
.fx-reference-card{min-width:0;display:flex;flex-direction:column;gap:8px;padding:22px 18px 22px 0}
.fx-reference-card+.fx-reference-card{padding-left:23px;border-left:1px solid #eaeaea}
.fx-reference-card span{font:600 11px var(--sans);color:#313131}
.fx-reference-card strong{font:400 clamp(27px,3.2vw,40px) var(--serif);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.fx-reference-card small{font:450 11px/1.55 var(--sans);color:#565656}
.calendar-actions{display:flex;align-items:center;gap:13px 24px;flex-wrap:wrap;margin:21px 0 12px}
.market-release-list{margin-top:20px;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7}
.market-release-list>p{font-size:12px;color:#555;line-height:1.7}
.market-release-list ol{list-style:none;padding:0;margin:0}
.market-release-list li{display:grid;grid-template-columns:145px minmax(0,1fr);gap:20px;padding:16px 0}
.market-release-list li+li{border-top:1px solid #ededed}
.market-release-list time{font:600 11px/1.6 var(--sans);color:#444}
.market-release-list li span{display:flex;justify-content:space-between;align-items:baseline;gap:12px 20px;flex-wrap:wrap}
.market-release-list li a{font:600 12px/1.55 var(--sans);color:#222;text-decoration:none}
.market-release-list li a:hover{text-decoration:underline;text-underline-offset:3px}
.market-release-list li small{font:500 10px/1.5 var(--sans);color:#666}
.state-prices{padding-top:69px}
.state-prices .obs-section-title{margin-bottom:12px}
.state-national-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:25px 0 32px;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7}
.state-national-grid>div{display:flex;flex-direction:column;gap:7px;padding:21px 16px 21px 0}
.state-national-grid>div+div{border-left:1px solid #e7e7e7;padding-left:23px}
.state-national-grid span{font:600 11px var(--sans);color:#333}
.state-national-grid strong{font:400 clamp(30px,3.5vw,46px)/1.2 var(--serif);letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.state-national-grid small{font:450 11px/1.5 var(--sans);color:#595959}
.state-data-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.8fr);gap:42px}
.state-panel-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap}
.state-data-grid h3{font:400 23px/1.3 var(--serif);letter-spacing:-.03em;margin:0 0 12px}
.state-panel-heading label{font:600 11px/1.5 var(--sans);color:#444;display:flex;flex-direction:column;gap:5px;width:min(100%,240px);min-width:0}
.state-panel-heading select{width:100%;min-width:0;padding:10px 11px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#171717;font:500 12px var(--sans)}
.state-selected{background:#fafafa;border-radius:8px;padding:18px 20px;margin:20px 0 24px;min-height:85px}
.state-selected>p{font:450 11px/1.7 var(--sans);color:#595959;margin:8px 0 0}
.state-selected h4{font:500 20px/1.3 var(--serif);margin:0 0 14px}
.state-measures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.state-measures>div{min-width:0}
.state-measures dt{font:500 10px/1.5 var(--sans);color:#555}
.state-measures dd{font:500 23px/1.3 var(--serif);margin:4px 0;font-variant-numeric:tabular-nums}
.state-measures small{display:block;font:450 10px/1.5 var(--sans);color:#666}
.state-rank-list,.state-division-list{list-style:none;margin:0;padding:0}
.state-rank-list li,.state-division-list li{border-bottom:1px solid #ececec}
.state-rank-row{width:100%;border:0;background:transparent;color:#171717;text-align:left;display:grid;grid-template-columns:minmax(120px,1.3fr) minmax(80px,1fr) 55px;align-items:center;gap:12px;padding:12px 0;cursor:pointer;font:500 11px/1.4 var(--sans)}
.state-rank-row:hover,.state-rank-row[aria-pressed="true"]{color:var(--accent)}
.state-rank-row:focus-visible,.state-show-all:focus-visible,.state-panel-heading select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.state-rank-row strong,.state-division-list strong{font:600 11px var(--sans);text-align:right;font-variant-numeric:tabular-nums}
.state-bar-track{height:6px;background:#e9e9e9;border-radius:6px;overflow:hidden;display:block}
.state-bar-fill{height:100%;display:block;background:#b42332;border-radius:6px}
.state-show-all{margin-top:16px;border:1px solid #ddd;background:#fff;border-radius:8px;padding:10px 14px;color:#222;font:600 11px var(--sans);cursor:pointer}
.state-show-all:hover{background:#f5f5f5}
.state-show-all[hidden]{display:none}
.state-division-list{margin-top:20px}
.state-division-list li{display:grid;grid-template-columns:minmax(130px,1.5fr) minmax(65px,1fr) 52px;align-items:center;gap:12px;padding:15px 0;font:500 11px/1.5 var(--sans)}
.state-drivers .state-bar-fill{background:#171717}
@media(max-width:840px){.commodity-grid{gap:10px}.commodity-stat{padding:22px 18px}.commodity-stat>strong{font-size:31px}}
@media(max-width:840px){.state-data-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:620px){
.commodities-section,.reference-fx,.economic-events{padding-top:47px}
.commodity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.commodity-stat{padding:21px 14px 18px}
.commodity-stat>strong{font-size:clamp(25px,6.8vw,35px)}
.commodity-stat:last-child{grid-column:1/-1}
.commodity-stat:last-child>strong{font-size:32px}
.commodity-market-panel{padding:14px 10px}
.fx-reference-card{padding:17px 6px 18px 0}
.fx-reference-card+.fx-reference-card{padding-left:11px}
.fx-reference-card strong{font-size:clamp(20px,5.3vw,29px)}
.fx-reference-card small{font-size:10px}
.market-release-list li{grid-template-columns:1fr;gap:4px}
.state-prices{padding-top:47px}
.state-national-grid>div{padding-right:7px}
.state-national-grid>div+div{padding-left:9px}
.state-national-grid strong{font-size:clamp(23px,6vw,32px)}
.state-national-grid span,.state-national-grid small{font-size:10px}
.state-measures{grid-template-columns:1fr 1fr}
.state-rank-row{grid-template-columns:minmax(110px,1.3fr) minmax(45px,1fr) 50px;gap:8px}
}

/* Delayed Indian benchmark charts, embedded at their original provider. */
.market-indices{padding-top:36px}
.market-indices-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:23px 0 15px}
.market-indices-card{background:#f9f9f9;border-radius:8px;padding:18px;min-width:0;overflow:hidden}
.market-indices-card header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.market-indices-card h3{font:600 19px/1.3 Inter,Arial,sans-serif;letter-spacing:-.035em;margin:0}
.market-indices-card header span{font:400 11px/1.6 Inter,Arial,sans-serif;color:#666}
.market-indices-frame{min-height:255px;display:block;width:100%;overflow:hidden}
.market-indices-frame tv-mini-chart{display:block;width:100%;height:255px}
.market-indices-frame>p{padding:25px 8px;font:400 12px/1.8 Inter,Arial,sans-serif;color:#777}
.market-indices-credit{font:400 10px/1.6 Inter,Arial,sans-serif;color:#666;margin:10px 0 0}
.market-indices-credit a,.market-indices-frame a{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media(max-width:680px){.market-indices-grid{grid-template-columns:1fr;gap:10px}.market-indices-card{padding:14px}.market-indices-frame,.market-indices-frame tv-mini-chart{min-height:235px;height:235px}}

/* Markets desk: give the two Indian benchmark charts enough space to be useful. */
.market-indices-grid{gap:16px}
.market-indices-card{padding:24px}
.market-indices-card h3{font-size:21px}
.market-indices-frame,
.market-indices-frame tv-mini-chart{height:410px;min-height:410px}
@media(max-width:680px){
  .market-indices-grid{grid-template-columns:1fr;gap:12px}
  .market-indices-card{padding:18px}
  .market-indices-frame,
  .market-indices-frame tv-mini-chart{height:325px;min-height:325px}
}

/* Static index iframes replace the old unshipped market-indices.js web component. */
.market-indices-frame.tradingview-widget-container{position:relative;display:block;height:410px;min-height:410px;overflow:hidden}
.market-indices-frame.tradingview-widget-container>.tradingview-widget-container__widget{width:100%;height:100%;min-height:0}
.market-indices-frame.tradingview-widget-container iframe{display:block;border:0;width:100%!important;height:100%!important}
@media(max-width:680px){.market-indices-frame.tradingview-widget-container{height:325px;min-height:325px}}

/* Provider charts cannot be embedded under current permissions: direct verified chart destinations. */
.market-indices-frame.index-link-panel{
  position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  height:250px;min-height:250px;border-radius:8px;background:#f4f4f4;padding:clamp(22px,3vw,40px);text-decoration:none;
}
@media(max-width:680px){.market-indices-frame.index-link-panel{height:230px;min-height:230px;padding:24px}}


/* Source-aware sector desk and benchmark yield displays. */
.market-intelligence{margin:42px 0 52px}
.market-intelligence .obs-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.market-intelligence .obs-section-title>a{font-size:12px;color:#8f1c28;text-underline-offset:3px}
.sector-heatmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:18px 0 10px}
.sector-heatmap>.market-disclaimer{grid-column:1/-1;padding:16px 18px;border-radius:8px;background:#f9f9f9}
.sector-tile{padding:16px 14px;min-height:94px;display:flex;flex-direction:column;justify-content:space-between;border-radius:8px;background:#f9f9f9;border:1px solid #ededed;text-decoration:none;color:#272727}
.sector-tile span{font:500 12px/1.4 Inter,sans-serif}.sector-tile strong{font:600 19px/1.25 Inter,sans-serif}
.sector-tile.sector-up strong{color:#25754c}.sector-tile.sector-down strong{color:#9d3844}
.market-source-meta{font:400 11px/1.6 Inter,sans-serif;color:#686868;margin:10px 0 20px}
.market-provider-panel{min-height:255px;background:#f9f9f9;border-radius:8px;overflow:hidden;padding:10px}
.market-provider-panel tv-market-data{display:block;min-height:235px}
.bond-yield-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.bond-yield-panel{background:#f9f9f9;border-radius:8px;padding:20px;min-width:0}
.bond-yield-panel h3{font:600 14px/1.4 Inter,sans-serif;margin:0 0 12px}
.bond-yield-panel>a{font:500 11px/1.5 Inter,sans-serif;color:#8f1c28}
.bond-yield-widget{height:250px;margin:0 0 10px}
.bond-yield-widget tv-mini-chart{display:block;width:100%;height:100%}
@media(max-width:780px){.sector-heatmap{grid-template-columns:repeat(2,minmax(0,1fr))}.bond-yield-grid{grid-template-columns:1fr}}
@media(max-width:420px){.sector-heatmap{grid-template-columns:1fr 1fr}.sector-tile{padding:12px}.bond-yield-panel{padding:14px}}

/* India equity market movers: two provider-backed screeners, no invented quotes. */
.market-movers-section{margin:34px 0 60px}
.market-movers-title{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.market-movers-title>a{font:500 12px/1.5 Inter,sans-serif;color:#8f1c28}
.market-movers-note{font:400 12px/1.7 Inter,sans-serif;color:#696969;max-width:860px;margin:12px 0 22px}
.market-movers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.market-mover-column{min-width:0;border:1px solid #eaeaea;border-radius:8px;background:#fff;overflow:hidden;padding:18px}
.market-mover-column-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.market-mover-column-heading h3{margin:0;font:600 17px/1.4 Inter,sans-serif;letter-spacing:-.025em;color:#222}
.market-mover-column-heading a,.market-mover-embed .tradingview-widget-copyright a{font:500 11px/1.5 Inter,sans-serif;color:#8f1c28;text-underline-offset:3px}
.market-mover-embed{min-width:0;overflow:hidden}
.market-mover-embed .tradingview-widget-copyright{text-align:left;padding-top:7px;color:#6a6a6a}
@media(max-width:830px){.market-movers-grid{grid-template-columns:1fr}.market-mover-column{padding:14px}.market-movers-section{margin:26px 0 44px}}
