/* Shared public pages and in-game information. Edition 1.0 */
.info-page{background:var(--paper);color:var(--ink);min-height:100svh}
.info-masthead{max-width:1180px;padding:26px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);background:var(--white);color:var(--ink)}
.info-brand{font:850 25px/1.15 var(--sans);letter-spacing:-1px;text-decoration:none;color:var(--ink)}.info-brand span{color:var(--accent);font-weight:400}
.info-page .site-info{max-width:1080px;padding:20px 32px 64px;margin:auto}
#modal:has(.site-info){width:min(920px,calc(100vw - 24px));max-width:none;height:90dvh;max-height:90dvh;scrollbar-gutter:stable}
html:has(.info-page){scrollbar-gutter:stable}
.info-page>.site-info{min-height:calc(100svh - 200px)}
#info-content{animation:none;transition:none}
#info-content h1:focus{outline:none}
.site-info{min-width:0;color:var(--ink)}
.info-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 30px;padding:12px 0 20px;border-bottom:1px solid var(--line)}
.info-nav button,.info-nav a{min-width:0;white-space:normal;hyphens:auto;overflow-wrap:break-word;display:flex;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--white);font:600 12px/1.4 var(--sans);text-decoration:none}
.info-nav [aria-current=page]{background:var(--accent);color:#fff;border-color:var(--accent)}
.info-nav :focus-visible,.info-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.info-heading{padding:6px 0 28px;max-width:780px}
.info-heading .eyebrow{color:var(--accent);font-size:10px;letter-spacing:1.8px;margin:0 0 16px}
.site-info .info-heading h1{font:800 clamp(32px,5vw,54px)/1.06 var(--sans);letter-spacing:-1.5px;margin:0 0 22px;color:var(--ink)}
.site-info p.info-lead{font:400 18px/1.65 var(--sans);color:var(--muted);max-width:61ch;margin:0}
.info-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--accent);color:#fff;border-radius:12px;padding:26px;margin:0 0 32px;gap:22px}
.info-stats>div{min-width:0;padding-right:18px;border-right:1px solid #ffffff55}.info-stats>div:last-child{border:0;padding-right:0}
.info-stats strong{display:block;color:#fff;font-size:42px;line-height:1.1;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.info-stats span{display:block;min-width:0;color:#fff;font-size:13px;line-height:1.6;margin-top:10px;hyphens:auto;overflow-wrap:break-word;word-break:normal}
.info-section{padding:26px 0;border-top:1px solid var(--line);min-width:0}
.site-info h2{font:750 23px/1.3 var(--sans);letter-spacing:-.5px;color:var(--ink);margin:0 0 15px}
.site-info p,.site-info li,.site-info address{font:400 14px/1.85 var(--sans);color:var(--ink);margin:0 0 14px;max-width:75ch}
.site-info address{font-style:normal}.site-info p.info-small{font-size:12px;color:var(--muted);line-height:1.75}
.info-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.info-index{display:block;font:750 12px/1 var(--sans);color:var(--accent);margin-bottom:18px}
.info-note{background:var(--red-light);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:24px;margin-bottom:28px}
.info-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.info-link,#modal-body .site-info .info-link{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;padding:10px 13px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:8px;text-decoration:none;font:600 12px/1.5 var(--sans);margin:0;overflow-wrap:anywhere}
.info-link>span{display:grid;place-items:center;flex:none;width:20px;height:20px;font-size:20px;color:var(--accent);line-height:1}
.info-footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);padding:26px 22px;font-size:12px;color:var(--muted)}
.source-search{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:7px 18px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px;margin:0 0 20px}
.source-search label{font:650 12px/1.5 var(--sans);color:var(--ink)}.source-search label[for=source-filter]{grid-column:2;grid-row:1}
.source-search>div{grid-column:1;position:relative;display:flex;min-width:0}.source-search input,.source-search select{width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font:400 13px/1.4 var(--sans);padding:12px}
.source-search input{padding-right:48px;appearance:none}.source-search input::-webkit-search-cancel-button{display:none}.source-search select{grid-column:2;grid-row:2}.source-search input:focus,.source-search select:focus{outline:2px solid var(--accent);outline-offset:2px}
#source-clear{position:absolute;right:2px;top:2px;width:44px;height:44px;border:0;background:none;font-size:23px;color:var(--muted)}#source-clear:disabled{opacity:.25}
#source-count{grid-column:1/-1;font-size:11px;color:var(--muted);margin:4px 0 0}
.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:24px 0 34px}
.source-card{display:flex;flex-direction:column;align-items:start;min-width:0;padding:23px;border:1px solid var(--line);border-radius:10px;background:var(--white)}
.source-card[hidden]{display:none}
.source-meta{display:flex;flex-direction:column;gap:5px;margin-bottom:18px;font-size:10px}.source-meta>span{font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.8px}.source-meta small{color:var(--muted);font-size:10px}
.source-card .source-author{font-size:11px;color:var(--muted);margin-bottom:7px}.source-card h2{font-size:16px;line-height:1.6;letter-spacing:0;overflow-wrap:anywhere;margin-bottom:13px}
.source-card .source-tags{font-size:11px;color:var(--muted);margin-top:0}.source-card .info-link{margin-top:auto!important}
.release{display:grid;grid-template-columns:100px minmax(0,1fr);gap:28px;padding:30px 0;border-top:1px solid var(--line)}
.release-version{font-size:26px;font-weight:800;letter-spacing:-1px;color:var(--accent)}.release-version small{display:block;font-size:9px;letter-spacing:1px;margin-top:6px}
.release ul{padding-left:19px;margin:0}.release li{padding-left:3px;margin:0 0 10px;font-size:13px}
@media(max-width:600px){.info-masthead{padding:20px;gap:12px}.info-brand{font-size:21px}.info-masthead>.info-link{font-size:10px;padding:8px}.info-page .site-info{padding:14px 20px 35px}.info-nav{gap:8px;margin-bottom:22px}.info-nav button,.info-nav a{font-size:11px;padding:9px 11px;flex:1 1 auto}.info-heading{padding-top:5px}.site-info .info-heading h1{font-size:34px;letter-spacing:-1px}.site-info p.info-lead{font-size:15px}.info-stats{padding:8px 20px}.info-stats strong{font-size:32px}.info-columns,.source-grid{grid-template-columns:1fr;gap:0}.source-grid{gap:12px}.source-card{padding:20px}.source-search{grid-template-columns:1fr;padding:16px;gap:8px}.source-search label[for=source-filter]{grid-column:1;grid-row:3;margin-top:6px}.source-search select{grid-column:1;grid-row:4}.source-search>div{grid-row:2}.info-note{padding:20px}.site-info h2{font-size:21px}.release{grid-template-columns:1fr;gap:12px}.release-version{display:flex;align-items:center;gap:14px;font-size:23px}.release-version small{margin:0}.site-info p,.site-info li,.site-info address{font-size:13px}.info-actions{gap:8px}.info-actions>.info-link{flex:1 1 100%}}
.art-info .source-search{margin-top:28px}.art-info article[hidden]{display:none}.art-info article{border:1px solid var(--line);border-radius:10px;background:var(--white);padding:22px;margin:16px 0;gap:24px;grid-template-columns:170px minmax(0,1fr)}.art-info article img{width:100%;border-radius:6px}.art-info article h2{margin:0 0 12px;font-size:23px}.art-info article strong{display:block;color:var(--accent);font-size:12px;margin-bottom:10px}.art-info article>div{min-width:0}.art-info .credit a{overflow-wrap:anywhere}.art-info details{padding:0;border:1px solid var(--line);border-radius:7px;background:var(--paper)}.art-info summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;font-weight:600;list-style:none}.art-info summary:before{content:'+';font-size:20px;line-height:1;color:var(--accent)}.art-info details[open]>summary:before{content:'−'}.art-info details>p{padding:0 14px 14px}.art-info summary::-webkit-details-marker{display:none}
@media(max-width:600px){.art-info article{grid-template-columns:1fr;gap:20px;padding:18px}.art-info article img{max-height:none;aspect-ratio:3/2}}
/* Edition 1.1: complete content scope and separate ending gallery. */
.cover-scope.scope-total{grid-template-columns:repeat(4,minmax(0,1fr))}.scope-total>div{min-width:0}.scope-total strong{font-variant-numeric:tabular-nums}.strategy-feature.strategy-expanded{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:50px}.strategy-feature .strategy-combinations{padding:32px;border-radius:14px;border:1px solid var(--line);background:var(--white)}.strategy-combinations strong{display:block;font:800 clamp(44px,6vw,72px)/1.2 var(--sans);letter-spacing:-2px;color:var(--accent);margin:14px 0}.strategy-combinations sup{font-size:.48em;letter-spacing:-1px;vertical-align:super}.strategy-combinations h3{font-size:20px;line-height:1.4;margin:0 0 18px}.strategy-combinations p{font-size:13px!important;line-height:1.85!important}.strategy-combinations details{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.strategy-combinations summary{font-size:12px;font-weight:700;cursor:pointer}.strategy-combinations details>p{margin:14px 0 0}.scope-method{font-size:11px;color:var(--muted);line-height:1.7;margin:-18px 0 32px}.info-count-method{border:1px solid var(--line);border-radius:10px;padding:20px;background:var(--white)}.info-count-method summary{font-weight:700;cursor:pointer}.info-count-method p{padding-top:16px}.info-count-method .info-link{margin-top:10px}
.gallery-intro{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:24px;margin:0 0 36px;background:var(--white)}.gallery-intro>strong,.gallery-intro>span{display:inline-block;font-size:14px;margin:0 20px 14px 0}.gallery-intro>strong{color:var(--accent)}.gallery-intro p{font-size:13px}.gallery-intro p:last-child{margin-bottom:0}
.ending-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin:0 0 45px}.ending-gallery-card{min-width:0;background:var(--white);border:1px solid var(--line);border-radius:13px;overflow:hidden;display:flex;flex-direction:column}.ending-gallery-card figure{position:relative;margin:0;overflow:hidden}.ending-gallery-card figure>a{display:block}.ending-gallery-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.ending-gallery-card figcaption{display:flex;justify-content:space-between;padding:10px 22px;font-size:10px;line-height:1.5;color:var(--muted);background:var(--paper);border-bottom:1px solid var(--line)}.ending-gallery-copy{padding:25px;display:flex;flex-direction:column;flex:1;min-width:0}.ending-gallery-copy .eyebrow{font-size:9px;letter-spacing:1.3px;color:var(--accent);font-weight:700}.site-info .ending-gallery-copy h2{font-size:27px;line-height:1.2;letter-spacing:-.7px;hyphens:auto}.ending-gallery-copy>p:not(.eyebrow){font-size:13px;line-height:1.9}.ending-gallery-copy details{margin-top:auto;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.ending-gallery-copy summary,.epilogue-catalogue summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;min-height:48px;font-size:11px;font-weight:700;cursor:pointer;list-style:none}.ending-gallery-copy summary::-webkit-details-marker,.epilogue-catalogue summary::-webkit-details-marker{display:none}.ending-gallery-copy summary>span{font-size:20px;color:var(--accent);line-height:1}.ending-gallery-copy details[open] summary>span{transform:rotate(45deg)}.ending-gallery-copy details p{padding:0 14px 14px;font-size:12px;margin:0}.ending-gallery-copy>.info-link{margin-top:12px}.epilogue-catalogue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}.epilogue-catalogue details{border:1px solid var(--line);border-radius:8px;background:var(--white);align-self:start}.epilogue-catalogue summary{font-size:13px}.epilogue-catalogue summary>span{color:var(--accent)}.epilogue-catalogue ul{padding:0 20px 15px 32px;margin:0}.epilogue-catalogue li{font-size:12px;margin-bottom:8px}
@media(max-width:700px){.cover-scope.scope-total{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.scope-total>div:nth-child(2){border:0}.strategy-feature.strategy-expanded{grid-template-columns:1fr;gap:24px}.strategy-feature .strategy-combinations{padding:24px}.ending-gallery{grid-template-columns:1fr;gap:24px}.ending-gallery-copy{padding:22px}.site-info .ending-gallery-copy h2{font-size:29px}.ending-gallery-copy>p:not(.eyebrow){font-size:14px}.epilogue-catalogue{grid-template-columns:1fr}.gallery-intro{padding:20px}.scope-method{font-size:10px}}
.card-art-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}.card-art-gallery article{min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--white);display:flex;flex-direction:column}.card-art-gallery article>a{display:block}.card-art-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.card-art-gallery article>div{padding:19px;display:flex;flex-direction:column;flex:1}.card-art-gallery article>div>span{font-size:9px;letter-spacing:1px;font-weight:700;color:var(--accent)}.card-art-gallery h3{font:750 19px/1.4 var(--sans);margin:12px 0 20px;hyphens:auto}.card-art-gallery .info-link{margin-top:auto;font-size:11px}@media(max-width:800px){.card-art-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.card-art-gallery{grid-template-columns:1fr}.card-art-gallery h3{font-size:22px}}

/* The same information component is used inside the dialog and on public pages. */
@media(max-width:760px){
 .info-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
 .info-nav>:last-child:nth-child(odd){grid-column:1/-1}
 .info-stats{grid-template-columns:minmax(0,1fr);gap:0;padding:8px 22px}
 .info-stats>div,.info-stats>div:last-child{display:grid;grid-template-columns:minmax(80px,.55fr) minmax(0,1fr);align-items:center;gap:18px;padding:20px 0;border:0}
 .info-stats>div+div,.info-stats>div+div:last-child{border-top:1px solid #ffffff55}
 .info-stats span{margin:0;font-size:13px;line-height:1.6}
}
@media(max-width:360px){.info-stats>div,.info-stats>div:last-child{grid-template-columns:minmax(0,1fr);gap:8px}.info-stats{padding-inline:18px}}

/* Short routes to credits; the archive uses the same layout inside the dialog. */
.info-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 26px}
.info-shortcuts .info-link{min-height:60px;font-size:14px}
.art-info article{display:grid}
.art-info article img{display:block;aspect-ratio:3/2;object-fit:cover}
.art-info .credit{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.75;margin-top:12px}
.art-info .credit a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
@media(max-width:400px){.info-shortcuts{grid-template-columns:minmax(0,1fr)}}
