:root{--paper:#f7f4ec;--ink:#17150f;--faded:#5c5647;--rule:#b8b2a2;--red:#8a1f1b;--navy:#1d3a5f;--card:#fffdf7;color-scheme:light}
/* color-scheme is what makes the native <input type="date"> — its typed value,
   its spin arrows and the calendar panel Chrome pops open — follow the theme.
   Without it the browser paints those in its light palette, so on the dark
   paper the digits and the picker are near-black on near-black. */
:root[data-theme="dark"]{--paper:#111714;--ink:#f3f6f3;--faded:#c7d0ca;--rule:#5f6c65;--red:#ff9588;--navy:#a9caff;--card:#19211d;color-scheme:dark}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink)}body{margin:0;font:16px/1.42 'Source Serif 4',Georgia,serif}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}a:focus-visible,summary:focus-visible,input:focus-visible,button:focus-visible{outline:2px solid var(--navy);outline-offset:2px}.paper{max-width:1280px;margin:auto;padding:0 18px}.market-tape{overflow:hidden;border-bottom:1px solid var(--rule);background:var(--card);font:10px 'IBM Plex Mono',monospace;white-space:nowrap}.market-tape-track{display:inline-flex;width:max-content;animation:tape 42s linear infinite}.tape-quote{padding:8px 18px;border-right:1px solid var(--rule)}.tape-quote i{font-style:normal}.up{color:#087443}.down{color:#b42318}@keyframes tape{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.market-tape{overflow-x:auto}.market-tape-track{animation:none}}
.masthead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:13px 0 7px}.brand{font:400 clamp(42px,7vw,76px) UnifrakturMaguntia,serif;text-align:center}.account{text-align:right}.account-button{display:inline-block;border:1px solid var(--ink);padding:8px 12px;font:600 10px 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.08em;background:var(--ink);color:var(--paper)}.account-button:hover{background:var(--red);color:white}.dateline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);padding:4px 0;font:10px 'IBM Plex Mono',monospace;letter-spacing:.07em;text-transform:uppercase}.dateline>span:nth-child(2){text-align:center}.edition-menu{justify-self:end;position:relative}.edition-menu summary{cursor:pointer;list-style:none;font-weight:600}.edition-menu nav{position:absolute;right:0;top:22px;z-index:5;min-width:180px;background:var(--paper);border:1px solid var(--ink);box-shadow:4px 4px 0 rgba(0,0,0,.15)}.edition-menu nav a{display:block;padding:9px 12px;border-bottom:1px solid var(--rule)}.date-form{display:flex;justify-content:flex-end;align-items:center;gap:6px;padding:7px 0;font:10px 'IBM Plex Mono',monospace;text-transform:uppercase}.date-form input,.date-form button{font:inherit;padding:4px 7px;border:1px solid var(--ink);background:transparent;color:var(--ink)}.date-form button{background:var(--ink);color:var(--paper);cursor:pointer}
.lead{display:grid;grid-template-columns:2fr 1fr;gap:26px;padding:18px 0 22px;border-bottom:3px double var(--ink)}.kicker,.byline,.coverage h2{font:10px 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}.lead h1{font:900 clamp(28px,4vw,48px)/1.05 'Playfair Display',serif;margin:5px 0}.deck{font-size:18px;color:var(--faded);font-style:italic}.coverage{border-left:1px solid var(--rule);padding-left:18px}.coverage a{display:block;padding:7px 0;border-bottom:1px dotted var(--rule);font-size:13px}.coverage a b,.related b{display:block;color:var(--navy);font:9px 'IBM Plex Mono',monospace;text-transform:uppercase}.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;padding:20px 0}.desk{margin-bottom:24px}.desk-head,.rail-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--ink);margin-bottom:10px}.desk-head h2,.rail-head h2{font:700 21px 'Playfair Display',serif;margin:0}.desk-head span,.desk-head>a,.rail-head span{font:9px 'IBM Plex Mono',monospace;color:var(--faded)}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}.story{padding:8px 0 14px;border-bottom:1px solid var(--rule)}.story h3{font:700 17px/1.15 'Playfair Display',serif;margin:0 0 5px}.story p{font-size:13px;color:var(--faded);margin:0 0 7px}.related{display:block;font-size:11px;padding:3px 0}.scoreboard{border:1px solid var(--ink);padding:12px;background:var(--card)}.league h3{font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.16em;border-bottom:1px solid var(--rule);padding:8px 0 3px;margin:0}.game-card{padding:8px 0;border-bottom:1px solid var(--rule)}/* minmax(0,1fr) on the name column, not 1fr: a 1fr track floors at min-content,
   so a long club name ("Los Angeles Dodgers") refused to shrink inside the
   360px rail and ran straight under the score in the auto track. */
.team{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;padding:2px}.team img{width:22px;height:22px;object-fit:contain}.team-crest-blank{display:block;width:22px;height:22px}.team span{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team b{font:700 17px 'IBM Plex Mono',monospace}.game-status{display:block;margin:3px 0 0 31px;color:var(--navy);font:9px 'IBM Plex Mono',monospace;text-transform:uppercase}.market-desk{border-top:3px double var(--ink);padding:18px 0}.market-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.market-card{border:1px solid var(--rule);background:var(--card);padding:12px}.market-card h3{font:700 15px 'Playfair Display',serif;margin:0 0 7px}.market-card p{display:flex;justify-content:space-between;gap:8px;margin:4px 0;font:9px 'IBM Plex Mono',monospace}.empty{font:11px 'IBM Plex Mono',monospace;color:var(--faded)}.page-empty{padding:35px 0}footer{display:flex;justify-content:space-between;gap:10px;border-top:2px solid var(--ink);padding:12px 0 30px;color:var(--faded);font:9px 'IBM Plex Mono',monospace}
@media(max-width:1000px){.news-layout{grid-template-columns:1fr}.right-rail{order:-1}.scoreboard{overflow-x:auto}.league{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 14px}.league h3{grid-column:1/-1}.market-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.masthead{grid-template-columns:1fr auto}.mast-slot{display:none}.brand{text-align:left}.dateline{grid-template-columns:1fr auto}.dateline>span:nth-child(2){display:none}.lead{grid-template-columns:1fr}.coverage{border-left:0;border-top:1px solid var(--rule);padding:12px 0 0}.story-grid{grid-template-columns:1fr 1fr}.market-grid{grid-template-columns:1fr 1fr}}@media(max-width:430px){.account-button{padding:6px;font-size:8px}.story-grid,.market-grid{grid-template-columns:1fr}.date-form{justify-content:center}footer{display:block}}
