
/* Gaming memories 1984–2026: layered onto /blog/blog.css, no third-party fonts. */
.memory-article { --memory-amber:#f5c47d; --memory-green:#9ee4bd; }
.memory-article .article-header { max-width:850px; margin-left:auto; margin-right:auto; }
.memory-article .article-layout { display:block; max-width:850px; margin:0 auto; }
.memory-article .article-copy { max-width:none; }
.memory-article .article-copy { min-width:0; }
.memory-article .article-lead {font-size:clamp(1.14rem,2vw,1.42rem);line-height:1.72;color:#e1eaf2; }
.memory-article h2 {scroll-margin-top:106px;}
.memory-article h3 {scroll-margin-top:106px;}
.memory-article .memory-hero{margin:0 0 30px;position:relative;overflow:hidden;border:1px solid #34506a;border-radius:18px;min-height:260px;background:linear-gradient(125deg,#162b3a,#111724);}
.memory-article .memory-hero img { width:100%;height:auto;display:block;max-height:470px;object-fit:cover;opacity:.83; }
.memory-article .memory-hero figcaption{font-size:.82rem;color:#bdccdc;padding:12px 18px;border-top:1px solid #293c4f;}
.memory-article .memory-hero .memory-tag{position:absolute;left:20px;top:18px;padding:6px 10px;background:#0c1624dd;color:var(--memory-amber);font:700 .76rem ui-monospace,monospace;border-radius:6px;letter-spacing:.09em}
.memory-article .memory-intro-note{padding:18px 22px;margin:22px 0 28px;border-left:3px solid var(--memory-amber);background:#161f2b;color:#c9d8e4;border-radius:0 10px 10px 0;font-size:.97rem;line-height:1.75;}
.memory-article .memory-intro-note strong {color:#fff;}
.memory-article .era-navigation {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:32px 0;}
.memory-article .era-navigation a {display:block;padding:13px 15px;background:#121e2a;border:1px solid #2d4052;border-radius:9px;text-decoration:none;color:#dceaf8;font:700 .85rem ui-monospace,monospace;}
.memory-article .era-navigation a:hover,.memory-article .era-navigation a:focus-visible{border-color:var(--accent);background:#193146;}
.memory-article .era-navigation small{display:block;color:#9fb5c8;font-size:.71rem;font-weight:400;margin-top:4px;}
.memory-article .era-block {border-top:1px solid #344252;padding-top:23px;margin-top:62px;}
.memory-article .era-kicker{color:var(--memory-amber);font:700 .8rem ui-monospace,monospace;text-transform:uppercase;letter-spacing:.09em;}
.memory-article .era-block>h2{margin-top:9px;}
.memory-article .memory-highlight{font-size:1.04rem;line-height:1.8;background:linear-gradient(120deg,#132c2d,#14202b);border:1px solid #355954;padding:21px 25px;border-radius:13px;margin:26px 0;}
.memory-article .memory-highlight b,.memory-article .memory-highlight strong{color:#e9fff4;}
.memory-article blockquote{border-left:3px solid var(--memory-amber);margin:28px 0;padding:4px 0 4px 21px;color:#e7d7c5;font-size:1.1rem;font-style:normal;}
.memory-article .memory-figure{margin:27px 0;border:1px solid #344757;background:#0e1722;border-radius:13px;overflow:hidden;}
.memory-article .memory-figure img{display:block;width:100%;height:auto;max-height:610px;object-fit:contain;}
.memory-article .memory-figure figcaption{padding:12px 16px;color:#b7cad9;font-size:.85rem;line-height:1.55;}
.memory-article .memory-figure figcaption a{color:#99d9f2;}
.memory-article .memory-figure figcaption .credit{display:block;margin-top:4px;font-size:.78rem;color:#8db7aa;}
.memory-article .memory-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 25px;}
.memory-article .memory-fact{padding:18px;border:1px solid #314659;border-radius:11px;background:#111d2a;}
.memory-article .memory-fact .fact-caption{display:block;color:#8faec8;font:.76rem ui-monospace,monospace;text-transform:uppercase;letter-spacing:.06em;margin-bottom:9px;}
.memory-article .memory-fact strong{font-size:1rem;color:#edf4fa;}
.memory-article .memory-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0;}
.memory-article .memory-story{min-width:0;border:1px solid #30485b;background:#101d29;border-radius:12px;padding:18px;}
.memory-article .memory-story h3{font-size:1rem;margin:0 0 8px;color:#d9eaff;}
.memory-article .memory-story p{margin:0;color:#c0cfdd;font-size:.91rem;line-height:1.65;}
.memory-article .memory-timeline-graphic{width:100%;height:auto;display:block;border-radius:14px;border:1px solid #31445a;background:#101824;margin:22px 0;}
.memory-article .memory-game-browser{margin:36px 0 45px;}
.memory-article .memory-game-browser .filter-line{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0;}
.memory-article .memory-game-browser label{display:block;margin:0 0 8px;color:#c3d2dd;font-weight:600;font-size:.92rem}
.memory-article .memory-game-browser input{width:100%;padding:13px 15px;border:1px solid #53647a;border-radius:9px;background:#101b28;color:#fff;font:inherit;}
.memory-article .memory-game-browser input:focus-visible{outline:3px solid var(--accent);outline-offset:2px;}
.memory-article .filter-line button{appearance:none;border:1px solid #3f586a;background:#112332;color:#dae8f5;font:600 .83rem ui-monospace,monospace;padding:10px 12px;border-radius:8px;cursor:pointer;}
.memory-article .filter-line button[aria-pressed="true"]{border-color:var(--memory-amber);color:#161d27;background:var(--memory-amber);}
.memory-article .game-groups{display:grid;gap:22px;}
.memory-article .game-era{padding:20px;border:1px solid #304155;background:#111a26;border-radius:12px;}
.memory-article .game-era h3{font-size:1.12rem;margin:0 0 16px;}
.memory-article .game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:0;}
.memory-article .game-list li{margin:0;padding:10px 12px;border-left:2px solid #4b7e8f;background:#172635;color:#dcebf7;font-size:.89rem;line-height:1.5;}
.memory-article .game-list li strong{font-weight:660}
.memory-article .game-list li small{display:block;color:#9cb3c5;line-height:1.4;}
.memory-article .game-list li[hidden],.memory-article .game-era[hidden]{display:none!important;}
.memory-article .memory-hardware{width:100%;font-size:.9rem;border-collapse:collapse;margin:19px 0 26px;}
.memory-article .memory-hardware th,.memory-article .memory-hardware td{padding:11px;border-bottom:1px solid #324456;text-align:left;vertical-align:top;}
.memory-article .memory-hardware th{color:#b2c5d5;font:700 .77rem ui-monospace,monospace;}
.memory-article .memory-hardware td:first-child{color:#f4c88a;white-space:nowrap;}
.memory-article .memory-sources{padding:18px 21px;background:#111b27;border:1px solid #2c4054;border-radius:12px;font-size:.9rem;line-height:1.7;}
.memory-article .memory-sources li{margin:8px 0;}
.memory-article .memory-sources a{overflow-wrap:anywhere;}
.memory-article .memory-note{font-size:.86rem;color:#a3b9c9;}
.memory-article .memory-end{border-top:1px solid #34485a;margin-top:40px;padding-top:25px;font-size:1.08rem;}
.memory-article .memory-end strong{color:var(--memory-amber)}
@media(max-width:780px){.memory-article .era-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-article .memory-story-grid{grid-template-columns:1fr}.memory-article .memory-facts{grid-template-columns:1fr}.memory-article .game-list{grid-template-columns:1fr}.memory-article .memory-hardware{font-size:.8rem}.memory-article .memory-hardware td:first-child{white-space:normal}}
@media(prefers-reduced-motion:reduce){.memory-article *{scroll-behavior:auto!important}}

@media(min-width:1100px){.memory-article .article-header{max-width:850px}.memory-article .article-copy{font-size:18px}}

/* Illustrated edition: quiet amber, sea green and objects with room to breathe. */
.memory-article .article-layout,.memory-article .article-header{max-width:960px}
.memory-article .article-copy>p,.memory-article .era-block>p{max-width:78ch}
.memory-article .memory-hero{min-height:0}
.memory-article .memory-hero img{max-height:none;object-fit:contain;opacity:1}
.memory-article .memory-tag{pointer-events:none;z-index:1}
.memory-article .memory-hero .memory-tag{top:auto;bottom:82px}
.memory-article a:focus-visible,.memory-article button:focus-visible,.memory-lightbox a:focus-visible,.memory-lightbox button:focus-visible,.memory-article summary:focus-visible{outline:3px solid #f5c47d;outline-offset:4px;border-radius:4px}
.memory-article .memory-image-link{display:block;position:relative;cursor:zoom-in;overflow:hidden}
.memory-article .memory-image-link::after{content:'↗';position:absolute;right:10px;bottom:10px;background:#0b1929ed;color:#fff;border:1px solid #8fa8bb;border-radius:6px;padding:2px 9px;font:700 20px/1.5 ui-monospace,monospace;pointer-events:none}
.memory-article .memory-explainer{margin:28px 0;padding:25px 28px;border:1px solid #36525d;border-left:4px solid #8bd3c8;border-radius:0 14px 14px 0;background:linear-gradient(120deg,#142831,#131e2c);font-size:.96rem}
.memory-article .memory-explainer h3{margin:0 0 14px;font-size:1.2rem;color:#f1ddba;line-height:1.4}
.memory-article .memory-explainer .era-kicker{display:block;margin-bottom:12px;color:#9ee4bd}
.memory-article .memory-explainer p{margin:12px 0;line-height:1.8}
.memory-article .memory-explainer p:last-child{margin-bottom:0}
.memory-article code{overflow-wrap:anywhere;white-space:normal}
.memory-article .hardware-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0 38px}
.memory-article .hardware-card{display:flex;flex-direction:column;min-width:0;margin:0;border:1px solid #354b59;border-radius:13px;overflow:hidden;background:#101d29}
.memory-article .hardware-card:only-child{grid-column:1/-1;max-width:620px;width:100%;margin:auto}
.memory-article .hardware-card .memory-image-link{background:#e9ebeb;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}
.memory-article .hardware-card img{display:block;width:100%;height:100%;object-fit:contain}
.memory-article .hardware-card figcaption{padding:18px 20px;font-size:.86rem;line-height:1.6}
.memory-article .hardware-card strong{color:#f3d4a7;font-size:1.05rem}
.memory-article .hardware-card p{margin:8px 0;color:#c1d0db;font-size:inherit}
.memory-article .hardware-card small{display:block;font-size:.75rem;color:#aec4d2;overflow-wrap:anywhere}
.memory-article .hardware-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
.memory-article .character-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0 14px}
.memory-article .character-card{min-width:0;overflow:hidden;border:1px solid #3d4b48;border-radius:13px;background:#122127;margin:0}
.memory-article .character-card img{display:block;width:100%;height:auto}
.memory-article .character-card figcaption{padding:18px 20px}
.memory-article .character-card h4{font-size:1.2rem;color:#edcf8c;margin:0 0 6px;line-height:1.3}
.memory-article .character-card .character-class{font:600 .78rem/1.6 ui-monospace,monospace;color:#a5d3c4;margin:0 0 10px}
.memory-article .character-card p{font-size:.88rem;line-height:1.65;margin:0 0 12px}
.memory-article .character-card small{display:block;font-size:.69rem;color:#a2b8bd}
.memory-article .character-card:last-child{grid-column:1/-1;max-width:640px;width:100%;margin:auto}
.memory-article .memory-clippy{display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;margin:38px 0;background:#14232e;border:1px solid #3a5360;border-radius:15px;padding:25px}
.memory-article .memory-clippy h3{margin-top:10px}
.memory-article .memory-clippy p{font-size:.94rem;line-height:1.8}
.memory-article .paperclip-stage{align-self:center;text-align:center}
.memory-article .paperclip-stage img{width:100%;height:auto;display:block}
.memory-article .paperclip-stage button,.memory-article .archive-reset{font:inherit;font-size:.82rem;border:1px solid #63838b;color:#d4ece7;background:#152d37;border-radius:8px;padding:10px 14px;cursor:pointer}
.memory-article .paperclip-wave{animation:paperclip-wave 2.6s ease-in-out 1}
@keyframes paperclip-wave{
  0%,100%{transform:none}
  24%{transform:translateY(-7px) rotate(-7deg)}
  48%{transform:translateY(-3px) rotate(6deg)}
  72%{transform:translateY(-5px) rotate(-4deg)}
}
.memory-article .game-era{padding:22px;background:#101c28}
.memory-article .game-era h3{color:#f1d1a4;margin-bottom:22px}
.memory-article .game-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.memory-article .game-list .game-card{padding:0;border:1px solid #345064;border-radius:11px;background:#142635;overflow:hidden;display:flex;flex-direction:column}
.memory-article .game-media{display:block;position:relative;aspect-ratio:16/9;background:#0c1a26}
.memory-article .game-media img{display:block;width:100%;height:100%;object-fit:contain}
.memory-article .game-card-copy{padding:16px;display:flex;flex-direction:column;flex:1}
.memory-article .game-platform{font:600 .63rem/1.5 ui-monospace,monospace;text-transform:uppercase;color:#a8c5cb;margin-bottom:8px}
.memory-article .game-card-copy>strong{font-size:1rem;line-height:1.4;color:#edf3ed}
.memory-article .game-card-copy>small{font-size:.82rem;color:#bacbd4;margin:10px 0 15px;line-height:1.65}
.memory-article .game-card-copy .game-credit{font-size:.7rem;line-height:1.6;color:#abc0ce;margin:auto 0 8px;padding-top:12px;border-top:1px solid #344b5b}
.memory-article .archive-coverage{padding:18px 22px;background:#142d32;border:1px solid #40655f;border-radius:12px;margin:24px 0}
.memory-article .archive-coverage strong{color:#d2eac9}
.memory-article .archive-coverage p{font-size:.9rem;margin:8px 0 0;line-height:1.7}
.memory-article .image-filter{display:flex;align-items:center;gap:10px;font-size:.9rem;cursor:pointer}
.memory-article .image-filter input{width:20px;height:20px;accent-color:#f5c47d;flex:none}
.memory-article .archive-reset{margin:6px 0 14px}
.memory-article .missing-art{margin:24px 0;padding:18px 22px;background:#111e2b;border:1px solid #3a5263;border-radius:12px;font-size:.9rem}
.memory-article summary{cursor:pointer;color:#cbe7e4;padding:6px 0;font-weight:600}
.memory-article .missing-art ul{columns:2;padding-left:20px}
.memory-article .missing-art li{break-inside:avoid;margin:8px 0;font-size:.83rem}
.memory-article .memory-sources h3{margin:26px 0 12px}
.memory-article .memory-sources>h3:first-child{margin-top:0}
.memory-article .memory-sources details{border-top:1px solid #344b59;border-bottom:1px solid #344b59;padding:12px 0;margin:18px 0}
.memory-article .factual-sources{padding-left:22px;list-style:none}
.memory-article .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.memory-lightbox{background:#0e1c29;color:#e4eef4;border:1px solid #63808b;border-radius:14px;padding:20px;width:min(1400px,92vw);max-width:92vw;max-height:92dvh;box-sizing:border-box;overflow:auto}
.memory-lightbox::backdrop{background:#020811ed}
.memory-lightbox form{display:flex;justify-content:flex-end;margin:0 0 8px}
.memory-lightbox .memory-lightbox-close{font:28px/1 sans-serif;min-width:44px;min-height:44px;padding:6px 12px;background:#1d3847;color:#fff;border:1px solid #7298a6;border-radius:8px;cursor:pointer}
.memory-lightbox>img{display:block;max-width:100%;width:auto;height:auto;max-height:65dvh;object-fit:contain;margin:auto}
.memory-lightbox>img:not([src]){display:none}
.memory-lightbox>p{font:15px/1.6 system-ui,sans-serif;max-width:100ch;margin:16px auto;overflow-wrap:anywhere}
.memory-lightbox .memory-original{color:#a9e3dc;display:block;text-align:center;font:15px/1.6 system-ui,sans-serif}
body:has(.memory-lightbox[open]){overflow:hidden}
@media(max-width:860px){.memory-article .game-list{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-article .hardware-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-article .memory-clippy{grid-template-columns:160px minmax(0,1fr);padding:18px;gap:18px}}
@media(max-width:560px){.memory-article .hardware-gallery,.memory-article .character-gallery{grid-template-columns:1fr}.memory-article .hardware-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.memory-article .hardware-timeline figcaption{padding:12px}.memory-article .hardware-timeline strong{font-size:.9rem}.memory-article .game-list{grid-template-columns:1fr}.memory-article .game-era{padding:15px}.memory-article .game-card-copy{padding:18px}.memory-article .memory-explainer{padding:20px}.memory-article .memory-clippy{grid-template-columns:1fr}.memory-article .paperclip-stage{max-width:180px;margin:auto}.memory-article .missing-art ul{columns:1}.memory-article .memory-hero .memory-tag{position:static;display:block;border-radius:0;font-size:.65rem}.memory-lightbox{padding:12px}.memory-article .memory-hardware th,.memory-article .memory-hardware td{padding:8px}.memory-article .era-block{margin-top:42px}}
@media(prefers-reduced-motion:reduce){.memory-article .paperclip-wave{animation:none!important}}

/* Authentic title logos are shown whole, with a neutral surface for dark wordmarks. */
.memory-article .game-logo-media{background:#eeefeb;padding:20px;box-sizing:border-box}
.memory-article .game-logo-media img,.memory-article .game-cover-media img{object-fit:contain}
.memory-lightbox[data-media-kind="logo"]>img{background:#eeefeb;padding:18px;box-sizing:border-box}
.memory-article .additional-image-credits{margin-top:24px;padding:18px;border:1px solid #354b59;border-radius:10px}
.memory-article .additional-image-credits summary{cursor:pointer;font-weight:700}
.memory-article .additional-image-credits li{margin-bottom:18px;overflow-wrap:anywhere}
.memory-article .image-credit-logo{display:block;width:125px;height:auto;margin-top:10px;background:#eeefeb}
