
:root{--bg:#f7f4ec;--paper:#fffdf8;--ink:#22252a;--muted:#6c7680;--line:#d5d9df;--panel:#ffffff;--raised:#f3f6fa;--gold:#b77928;--gold2:#915d1a;--blue:#275271;--red:#9a4b3d;--max:1080px}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,'Helvetica Neue',sans-serif;line-height:1.65;font-size:16px}
a{color:var(--gold2);text-decoration:none} a:hover{text-decoration:underline}
.masthead{background:#ffffff;border-bottom:1px solid var(--line)} .masthead .inner{max-width:var(--max);margin:auto;padding:14px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px} .brand{font-size:14px;font-weight:950;letter-spacing:.17em;color:var(--ink)} .brandmark{display:inline-block;background:var(--gold);color:white;padding:2px 7px;margin-right:8px} .brand-sub{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.12em}
.notice{background:#fff8e8;border-bottom:1px solid #e7dbb8;color:#8b641d;text-align:center;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;padding:8px 10px}
.hero{position:relative;min-height:540px;display:flex;align-items:end;overflow:hidden;background:#ddd} .hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(0deg,rgba(255,253,248,.92) 0%,rgba(255,253,248,.60) 28%,rgba(255,253,248,.08) 68%), none;background-size:cover;background-position:center} .hero .inner{position:relative;max-width:var(--max);width:100%;margin:auto;padding:78px 22px 42px} .eyebrow,.kicker{font-size:12px;letter-spacing:.19em;text-transform:uppercase;font-weight:850;color:var(--gold2)} .hero h1{font-family:Georgia,serif;font-size:clamp(56px,10vw,104px);line-height:.92;letter-spacing:-.05em;margin:10px 0 14px;text-transform:uppercase;max-width:920px;color:#121519} .hero h1 em{font-style:italic;color:var(--gold2)} .dek{max-width:690px;font-size:clamp(18px,2.6vw,22px);line-height:1.4;color:#23292f;margin:0 0 14px} .subdek{max-width:760px;font-size:15px;line-height:1.55;color:#41484f;margin:0 0 15px;font-style:italic} .game-meta{font-size:13px;color:#545f69;letter-spacing:.03em}
.jumpbar{border-bottom:1px solid var(--line);background:#ffffff} .jumpbar .inner{max-width:var(--max);margin:auto;display:flex;gap:20px;flex-wrap:wrap;padding:14px 22px;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.07em} .jumpbar a{color:#4b5660}
main{max-width:var(--max);margin:auto;padding:40px 22px 80px} section{margin:0 0 60px} h2{font-family:Georgia,serif;font-size:clamp(31px,5vw,47px);line-height:1.08;letter-spacing:-.03em;margin:10px 0 18px} h3{font-family:Georgia,serif;font-size:25px;line-height:1.2;margin:8px 0 12px} p{margin:0 0 16px;color:#2e3439} .muted,.tiny{color:var(--muted)} .tiny{font-size:12px}
.couch{display:grid;grid-template-columns:1fr 2fr;gap:32px;border-bottom:1px solid var(--line);padding-bottom:38px} .couch-lead{color:var(--gold2);font-family:Georgia,serif;font-size:clamp(25px,3vw,38px);line-height:1.14} .couch p{font-size:17px}
.data-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:white;margin:28px 0 32px} .stat{padding:18px 22px;border-right:1px solid var(--line)} .stat:last-child{border:0} .stat strong{display:block;color:var(--gold2);font-family:Georgia,serif;font-size:30px;line-height:1.25} .stat span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#6a737b}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:20px} .note{background:#fffaf0;border-top:3px solid var(--gold);padding:22px;border:1px solid #eadfc8} .note h3{font-size:22px}
.models-intro{max-width:780px} .model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0 34px} .model-tile{background:white;border:1px solid var(--line);padding:19px;display:block;border-radius:2px} .model-tile .num{font-size:11px;color:var(--gold2);letter-spacing:.13em;font-weight:850} .model-tile strong{display:block;font-size:21px;color:var(--ink);font-family:Georgia,serif;margin:8px 0} .model-tile span:last-child{font-size:13px;color:var(--muted)}
.model-card{padding:28px;margin:25px 0;border:1px solid var(--line);background:linear-gradient(180deg,#fffefb,#f5f7fb);scroll-margin-top:15px;box-shadow:0 1px 0 rgba(0,0,0,.02)} .model-card header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start} .character{font-size:11px;color:var(--gold2);letter-spacing:.15em;font-weight:bold;text-transform:uppercase} .quote{font-style:italic;font-family:Georgia,serif;color:var(--gold2);font-size:17px;margin:9px 0 14px;max-width:720px} .model-top{display:grid;grid-template-columns:1.08fr .92fr;gap:32px;margin-top:14px} .badge{background:#f5ead4;border:1px solid #dcc194;padding:4px 9px;font-size:10px;font-weight:bold;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;color:#6f4b17} .story{font-size:16px}
.table-wrap{overflow:auto} table{width:100%;border-collapse:collapse;font-size:13px;background:white} th{background:#edf2f7;color:#6d5524;text-align:left;font-size:10px;letter-spacing:.11em;text-transform:uppercase} td,th{padding:9px 10px;border-bottom:1px solid #e0e4e9} td:last-child,th:last-child{text-align:right} tbody tr:first-child{background:#f5f9ff;font-weight:bold} .slot{color:#75808a;font-size:10px;letter-spacing:.09em;font-weight:bold} .slot.captain{color:#9a5a13} .salary-foot{font-size:12px;display:flex;justify-content:space-between;color:#805722;padding:9px 0;border-bottom:1px solid var(--line);font-weight:bold} .takeaway{border-top:1px solid var(--line);margin-top:22px;padding-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:20px} .takeaway p{font-size:14px;margin:0} .takeaway .lab{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--gold2);margin-bottom:3px}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px} .feature{border:1px solid var(--line);padding:23px;background:white} .feature .num{color:var(--gold2);font-weight:bold;font-size:11px;letter-spacing:.1em} .feature h3{font-size:22px} .feature p{font-size:14px;margin:0}
.checkline{border-top:1px solid var(--line);padding:14px 0;display:flex;gap:18px} .checkline strong{min-width:132px;color:var(--gold2)} .research{border-top:1px solid var(--line);padding-top:25px;font-size:12px;color:var(--muted)} .research p{font-size:13px;color:var(--muted)}
blockquote{margin:20px 0;padding:10px 0 10px 22px;border-left:3px solid var(--gold2);font-family:Georgia,serif;color:var(--gold2);font-size:22px} .surface{background:white;padding:24px;margin-top:24px;border:1px solid var(--line)} .surface p:last-child{margin-bottom:0}
footer{background:#ffffff;border-top:1px solid var(--line);padding:30px 22px;color:#69717a} .footinner{max-width:var(--max);margin:auto;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap} .slogan{font-family:Georgia,serif;color:var(--gold2);font-size:22px} .footer-small{font-size:12px;max-width:560px}
@media(max-width:780px){.couch,.model-top,.takeaway,.cols2{grid-template-columns:1fr} .model-grid{grid-template-columns:1fr} .data-strip{grid-template-columns:1fr 1fr} .stat:nth-child(2){border-right:0} .stat:nth-child(3){border-top:1px solid var(--line)} .hero{min-height:460px} .hero h1{font-size:64px} }
@media(max-width:480px){.masthead .inner{padding:12px 15px} .hero .inner{padding:70px 17px 25px} .hero h1{font-size:50px} main{padding-left:17px;padding-right:17px} .jumpbar .inner{gap:13px;font-size:10px;padding-left:17px;padding-right:17px} .checkline{display:block} .checkline strong{display:block;margin-bottom:4px} .model-card header{display:block} .badge{display:inline-block;margin-top:8px} td,th{padding:8px 6px} }

/* Reader toggle: light by default; optional night reading mode. */
html[data-theme="dark"] { color-scheme:dark; --bg:#0e151d;--paper:#f5f0e5;--ink:#f5f0e5;--muted:#bac4c9;--line:#34424d;--panel:#17222d;--raised:#1d2b38;--gold:#f2bb64;--gold2:#f2bb64;--blue:#8cb7d4;--red:#de796c; }
html[data-theme="dark"] .masthead, html[data-theme="dark"] .jumpbar, html[data-theme="dark"] footer {background:#101820}
html[data-theme="dark"] .notice {background:#29313a;border-color:#485462;color:#f2d39e}
html[data-theme="dark"] .hero:before {background-image:linear-gradient(0deg,rgba(8,15,21,.94) 0%,rgba(8,15,21,.60) 30%,rgba(8,15,21,.05) 70%),none}
html[data-theme="dark"] .hero h1, html[data-theme="dark"] .dek,html[data-theme="dark"] .subdek,html[data-theme="dark"] .game-meta {color:#f9f5eb;text-shadow:0 3px 18px rgba(0,0,0,.6)}
html[data-theme="dark"] p,html[data-theme="dark"] .brand,html[data-theme="dark"] .model-tile strong {color:#e3e8e9}
html[data-theme="dark"] .model-card {background:linear-gradient(135deg,#182632,#121d27)}
html[data-theme="dark"] .model-tile,html[data-theme="dark"] .feature,html[data-theme="dark"] .surface,html[data-theme="dark"] .data-strip {background:#17222d}
html[data-theme="dark"] .note {background:#18252f;border-color:#34424d}
html[data-theme="dark"] .badge {background:#2f3e4a;border-color:#576775;color:#f2e5cd}
html[data-theme="dark"] table {background:#182632} html[data-theme="dark"] th {background:#283a49;color:#f2c889} html[data-theme="dark"] td,html[data-theme="dark"] th {border-color:#344451} html[data-theme="dark"] tbody tr:first-child {background:#314353;color:white}
html[data-theme="dark"] .stat span,html[data-theme="dark"] .jumpbar a {color:#c8d1d5}
.theme-toggle {font:700 11px Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;background:transparent;border:1px solid var(--line);border-radius:5px;padding:8px 12px;color:var(--ink);cursor:pointer}
.theme-toggle:hover {background:var(--raised)}
@media(max-width:500px){.theme-toggle{font-size:10px;padding:7px}.masthead .brand-sub{display:none}}

/* Unified cover and compact article links. */
.issue-cover{position:relative;margin:0;height:clamp(500px,44vw,640px);overflow:hidden;background:#0b162a;isolation:isolate}
.issue-cover-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2}
.issue-cover-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,22,42,.92) 0%,rgba(11,22,42,.76) 32%,rgba(11,22,42,.18) 68%,rgba(11,22,42,.03) 100%);z-index:-1}
.issue-cover-copy{max-width:1080px;margin:auto;padding:34px 22px;color:#fffdf8;text-align:center;text-shadow:0 2px 16px rgba(0,0,0,.75)}
.issue-cover-series{font-size:11px;font-weight:800;letter-spacing:.16em;line-height:1.5;text-transform:uppercase;color:#eaf0f7;margin:0 0 10px}
.issue-cover h1{font-family:Georgia,serif;font-size:clamp(52px,6.6vw,88px);line-height:1.03;letter-spacing:-.035em;color:#fffdf8;margin:0 0 16px;text-transform:none}
.issue-cover h1 em{font-style:italic;color:#ffcb79}
.issue-cover-dek{max-width:680px;margin:0 auto 12px;color:#fffdf8;font-size:clamp(17px,1.7vw,21px);line-height:1.45}
.issue-cover-meta{max-width:720px;margin:0 auto 10px;color:#f0f4fa;font-size:14px;line-height:1.6}
.issue-cover-signoff{margin:0;color:#f4d9ac;font:italic 14px/1.5 Georgia,serif}
html[data-theme="dark"] .issue-cover-dek,html[data-theme="dark"] .issue-cover-meta{color:#fffdf8}
html[data-theme="dark"] .issue-cover-signoff{color:#f4d9ac}
.issue-navigation{background:var(--panel);border-bottom:1px solid var(--line)}
.issue-links{max-width:1080px;margin:auto;padding:18px 22px 22px;border:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:stretch}
.issue-links .links-label{grid-column:1 / -1;font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:900;color:var(--muted);margin:0 0 2px}
.issue-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:44px;padding:11px 14px;border:1px solid var(--line);border-radius:6px;background:var(--raised);color:var(--blue);font-size:13px;line-height:1.4;font-weight:700;white-space:normal;text-decoration:none;transition:background .15s,border-color .15s}
.issue-links a>span:first-child{min-width:0}
.issue-links a::after,.issue-links a:not(:last-child)::after{content:none}
.issue-links .quick-link-arrow{flex-shrink:0;color:var(--gold2);font-size:16px}
.issue-links a:hover{border-color:var(--gold2);background:var(--panel);text-decoration:none}
html[data-theme="dark"] .issue-links a{color:#b2d0e4}
main{padding-top:38px}
@media(max-width:780px){.issue-cover{height:auto;min-height:0}.issue-cover-image{inset:auto 0 0;height:auto;object-fit:contain;object-position:center}.issue-cover-shade{background:linear-gradient(180deg,#0b162a 0%,#0b162a 48%,rgba(11,22,42,.45) 72%,rgba(11,22,42,.02) 100%)}.issue-cover-copy{padding:28px 18px calc(56.22vw + 16px)}.issue-cover h1{font-size:clamp(48px,8vw,64px)}.issue-cover-meta{font-size:13px}.issue-links{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 17px 18px;gap:9px}}
@media(max-width:480px){.issue-cover h1{font-size:48px}.issue-cover-dek{font-size:16px}.issue-cover-meta{font-size:12px}.issue-cover-series{font-size:10px;letter-spacing:.12em}.issue-links a{font-size:12px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.issue-links a{transition:none}}
@media print{.issue-navigation{display:none}.issue-cover{height:auto;min-height:0;background:white}.issue-cover-image,.issue-cover-shade{display:none}.issue-cover-copy{padding:24px;color:#111;text-shadow:none}.issue-cover h1,.issue-cover h1 em,.issue-cover-series,.issue-cover-dek,.issue-cover-meta,.issue-cover-signoff{color:#111}}

.masthead .inner{flex-wrap:wrap}
.theme-toggle{min-height:44px}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold2);outline-offset:4px}
.skip-link{position:fixed;top:-100px;left:12px;z-index:999;background:var(--panel);padding:12px}
.skip-link:focus{top:12px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep article anchors clear of the shared sticky masthead. */
main section[id],main article[id]{scroll-margin-top:100px}
