/* Shared shell and themes. Keep app screenshots in their original colors. */
:root{--paper:#fff;--ink:#101112;--muted:#555b60;--panel:#f4f5f6;--line:#90979d;--soft-line:#d7dadd;--status:#e4e6e8;--inverse:#fff;--action:#101112;--action-hover:#333;--header:#fff;--header-ink:#101112;color-scheme:light}
:root[data-theme=dark]{--paper:#101112;--ink:#f5f5f5;--muted:#b8bdc2;--panel:#1d2023;--line:#666e75;--soft-line:#40464c;--status:#343a40;--inverse:#101112;--action:#f5f5f5;--action-hover:#d4d7da;--header:#101112;--header-ink:#f5f5f5;color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--paper:#101112;--ink:#f5f5f5;--muted:#b8bdc2;--panel:#1d2023;--line:#666e75;--soft-line:#40464c;--status:#343a40;--inverse:#101112;--action:#f5f5f5;--action-hover:#d4d7da;--header:#101112;--header-ink:#f5f5f5;color-scheme:dark}}
html{scrollbar-color:var(--muted) var(--paper)}body{background:var(--paper);color:var(--ink)}::selection{background:var(--ink);color:var(--paper)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid currentColor;outline-offset:4px}button:disabled{cursor:default}button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.site-header,.masthead{background:var(--header);color:var(--header-ink)}.topbar{height:auto;min-height:112px;width:min(1440px,calc(100% - 80px));max-width:none;margin:0 auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}
.brand{--brand-h:64px;display:flex;align-items:stretch;gap:16px;height:var(--brand-h);flex-shrink:0;text-decoration:none;margin:0;padding:0}.brand img{height:100%;object-fit:contain;margin:0;max-width:none}.brand .brand-icon{width:var(--brand-h);aspect-ratio:1}.brand .brand-wordmark{width:auto;aspect-ratio:4224.127775019249 / 1657.9774545902658;filter:invert(1)}:root[data-theme=dark] .brand-wordmark{filter:none}@media(prefers-color-scheme:dark){:root:not([data-theme]) .brand-wordmark{filter:none}}
.site-menu{display:flex;align-items:center;gap:36px;min-width:0}.site-nav{display:flex;align-items:center;gap:26px;font-size:16px;font-weight:600;line-height:1.4}.site-nav a{padding:10px 0;text-decoration:none}.site-nav a:hover{text-decoration:underline}.site-tools{display:flex;align-items:center;gap:22px}.language-switch{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:600}.language-switch a{min-width:38px;min-height:44px;display:flex;align-items:center;justify-content:center;text-decoration:none;border-bottom:2px solid transparent}.language-switch [aria-current=true]{border-color:currentColor}.theme-toggle{border:1px solid var(--line);border-radius:8px;background:transparent;color:inherit;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;font-size:14px;white-space:nowrap}.theme-toggle:hover{background:var(--panel)}.menu-toggle{display:none;align-items:center;justify-content:center;background:transparent;color:inherit;border:1px solid var(--line);border-radius:8px;width:44px;height:44px;padding:10px;flex-shrink:0}.menu-cross{display:none}.menu-toggle[aria-expanded=true] .menu-cross{display:block}.menu-toggle[aria-expanded=true] .menu-lines{display:none}
.home-intro{padding-block:32px 40px}.home-intro h1{overflow-wrap:break-word}.intro>p,.intro .revision{color:var(--muted)}.release-state{background:var(--status)}.button{background:var(--action);color:var(--inverse)}.button:hover{background:var(--action-hover)}.document-links a,.document-links a:last-child,.inner-main details{border-color:var(--soft-line)}.data-list dd{color:var(--muted)}.game{border-color:var(--line)}.site-footer{background:var(--paper);color:var(--ink)}.site-footer .footer-primary nav{align-items:center}.cookie-settings{background:transparent;border:0;color:inherit;padding:0;min-height:44px;text-align:start;font:inherit;text-decoration:underline;text-underline-offset:.22em}.footer-primary nav{row-gap:12px}.site-footer .seller{color:var(--muted)}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px}.consent-actions button{border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--paper);padding:11px 16px;min-height:44px;font-size:14px;line-height:1.4;font-weight:550}.consent-actions button:hover{background:var(--status)}
#cookie-dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:28px;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}#cookie-dialog::backdrop{background:rgb(0 0 0 / .65)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dialog-heading h2{font-size:26px;line-height:1.25;margin:6px 0 20px;letter-spacing:-.02em}#cookie-dialog>p{font-size:15px;line-height:1.6}#cookie-dialog>.consent-actions{margin-top:24px}#cookie-dialog>a{font-size:14px}.preference-status:not(.sr-only),.noscript-note{margin:20px auto;padding:16px;width:min(1120px,calc(100% - 40px));border:1px solid var(--line);background:var(--panel)}
@media(max-width:1200px){.topbar{gap:24px}.site-menu{gap:24px}.site-nav{gap:20px}.site-tools{gap:16px}.theme-toggle [data-theme-label]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.theme-toggle{width:44px;padding:10px}}
@media(max-width:900px){.topbar{width:calc(100% - 40px);min-height:96px;flex-wrap:wrap;padding:20px 0;gap:20px}.brand{--brand-h:52px;gap:13px}.menu-toggle{display:flex}.site-menu{width:100%;flex-direction:column;align-items:stretch;gap:20px;padding:8px 0 4px}.js .site-menu:not([data-open=true]){display:none}.site-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;font-size:18px}.site-nav a{padding:14px 0;border-bottom:1px solid var(--soft-line)}.site-tools{justify-content:space-between;gap:20px}.theme-toggle{width:auto;padding:10px 14px}.theme-toggle [data-theme-label]{position:static;width:auto;height:auto;clip-path:none}.language-switch{gap:10px;font-size:16px}.site-footer .footer-primary{display:block}.site-footer .footer-primary nav{display:flex;flex-wrap:wrap;column-gap:24px;margin-top:16px}}
@media(max-width:600px){.brand{--brand-h:44px;gap:11px}.topbar{min-height:84px;gap:16px}.home-intro h1{font-size:clamp(28px,7.4vw,42px)}.home-intro{padding:24px 20px 28px}.app-card{grid-template-columns:minmax(0,1fr) 42%;min-height:420px;height:auto}.card-copy{overflow-wrap:break-word}.card-copy h2{font-size:clamp(23px,6.4vw,26px)}.release-state{font-size:12px}.description{line-height:1.5}.button{padding-inline:12px;gap:8px}.consent-actions{width:100%;flex-direction:column;align-items:stretch}.consent-actions button{width:100%;text-align:center}.site-footer .footer-primary nav{display:grid;gap:12px}.cookie-settings{width:fit-content}.site-footer .footer-primary,.site-footer .seller{overflow-wrap:anywhere}#cookie-dialog{padding:20px}.dialog-heading h2{font-size:24px}.intro h1{overflow-wrap:break-word}.document{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

#cookie-dialog .preference-explanation{color:var(--muted);font-size:14px}#cookie-dialog .preference-current{font-weight:600}#cookie-dialog .preference-current:empty{display:none}#cookie-dialog .consent-actions button:first-child{background:var(--action);color:var(--inverse);border-color:var(--action)}#cookie-dialog .consent-actions button:first-child:hover{background:var(--action-hover)}
