/* Open shelves: a first-card gutter, then a viewport-wide horizontal track.
   Width and bleed are measured from the existing wrap, avoiding 100vw scrollbars. */
.bento-rail{
 display:flex;gap:16px;align-items:stretch;
 width:var(--bento-width,100%);max-width:100vw;min-width:0;
 margin-left:calc(-1 * var(--bento-offset,0px));
 padding:4px var(--bento-offset,0px) 24px;
 box-sizing:border-box;overflow-x:auto;
 scroll-snap-type:x proximity;scroll-padding-inline:var(--bento-offset,0px);
 overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:transparent transparent;
}
.bento-rail:hover,.bento-rail:focus-within{scrollbar-color:#d4d4d4 transparent}
.bento-rail:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.bento-rail>.bento-card{
 flex:0 0 304px;min-width:0;max-width:none;min-height:208px;
 background:#f9f9f9;border:0;border-radius:8px;box-shadow:none;
 padding:32px;scroll-snap-align:start;
 display:flex;flex-direction:column;align-items:flex-start;gap:16px;
 color:#171717;text-decoration:none;overflow-wrap:anywhere;
}
.bento-card h2,.bento-card h3,.bento-rail.research-teaser-grid strong{
 margin:0;font:500 18px/1.4 var(--sans);letter-spacing:-.025em;
}
.bento-card p,.bento-card small{margin:0;font:400 13px/1.8 var(--sans);color:#595959}
.bento-rail>a.bento-card{transition:background-color .2s ease}
.bento-rail>a.bento-card:hover{background:#f2f2f2;box-shadow:none;transform:none}
.bento-rail.research-teaser-grid{display:flex;gap:16px}
.bento-rail.finance-pulse-grid{display:flex;gap:16px}
.finance-method.bento-rail{padding-top:4px;border:0}
.finance-method .bento-card{flex-basis:360px}
.finance-method .oil-record-card{flex-basis:440px}
.finance-method .finance-table{width:100%;max-height:280px}
.bento-rail .market-ticker-card{flex-basis:608px;gap:16px}
.market-ticker-card .market-ticker{width:100%;min-height:72px}
.market-ticker-card h2{font-size:13px}
.market-bento .bento-card{min-height:192px}
@media(max-width:620px){
 .bento-rail>.bento-card,.finance-method .bento-card,.finance-method .oil-record-card{flex-basis:260px;padding:24px}
 .bento-rail .market-ticker-card{flex-basis:280px}
 .bento-rail.research-teaser-grid strong{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.bento-rail>a.bento-card{transition:none}}

/* Price and trend cards share one baseline, with room for provider attribution. */
.market-bento>.market-chart-card{flex-basis:336px;padding:24px;gap:8px}
.market-card-heading{min-height:56px}
.market-card-heading p{font-size:11px;margin-top:4px}
.home-market-chart{width:100%;height:220px;position:relative;overflow:hidden}
.home-market-chart .market-chart-fallback{position:absolute;inset:64px 0 auto;font-size:12px;pointer-events:none}
.home-market-chart tv-mini-chart{display:block;width:100%;height:220px;
 --tv-widget-font-family:var(--sans);--tv-widget-text-color:#343434;
 --tv-widget-price-text-color:#171717;--tv-widget-background-color:transparent;
 --tv-widget-scales-font-color:#595959;--tv-widget-accent-color:#b42332;
 --tv-widget-positive-color:#21623e;--tv-widget-negative-color:#b42332;
 --tv-widget-market-status-closed-color:#595959;
 --tv-widget-market-status-open-color:#21623e;
}
.market-chart-card .tradingview-widget-copyright a{color:#464646!important;text-decoration:underline;text-underline-offset:3px}
.market-chart-card .tradingview-widget-copyright{line-height:1.5;font-size:11px}
.market-chart-card .market-quote-note{font-size:10px;line-height:1.5}
@media(max-width:620px){.market-bento>.market-chart-card{flex-basis:280px}}
