:root{color-scheme:light;--ink:#203c31;--muted:#77857b;--green:#285a43;--line:#e2e8df;font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#f5f7f2;color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #92bf66;outline-offset:5px}.wrap{max-width:1120px;width:calc(100% - 80px);margin:auto}.masthead{background:radial-gradient(ellipse at 85% 0,#365d44 0,transparent 65%),#18382e;color:#fff;border-bottom:1px solid #ffffff12}.header{height:94px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:12px;letter-spacing:1px;font-weight:750;font-size:20px}.brand img{border-radius:12px}.header-right{display:flex;align-items:center;gap:28px}.header-note{font-size:13px;color:#bcccbf}.language{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #ffffff30;border-radius:9px;color:#e9f0e5;background:#ffffff08}.language select{background:transparent;color:inherit;border:0;font-size:13px;cursor:pointer;max-width:110px}.language option{background:#fff;color:#203c31}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:48px 0 28px;gap:20px}.eyebrow{font-size:10px;letter-spacing:2px;color:#8a9a80;margin:0 0 10px}.intro h1{font-size:30px;letter-spacing:-1px;margin:0;font-weight:650}.demo-note{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;padding-bottom:5px}.demo-note i{height:6px;width:6px;border-radius:50%;background:#8cad64}.game-cover{flex:0 0 250px;width:250px;aspect-ratio:263/346;border:0;border-radius:14px;padding:0;overflow:hidden;background:#e1e8d5;box-shadow:0 12px 24px #304d2820}.game-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}.game-cover:hover img{transform:scale(1.025)}.button{border:0;border-radius:9px;min-height:48px;padding:0 22px;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:35px}.primary{background:var(--green);color:#fff}.primary:hover:not(:disabled){background:#1d4834}.site-footer{background:#eaf0e4;border-top:1px solid #dee6d6;margin-top:64px}.footer{padding:28px 0 26px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #d9e2d1}.footer-brand{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;letter-spacing:.7px}.footer-brand img{border-radius:8px}.footer-top p{font-size:12px;color:#839178;margin:0}.footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:19px;color:#8b9780;font-size:11px;line-height:1.8}.footer-bottom p{margin:0 0 6px}.footer-bottom>span{white-space:nowrap}.footer summary{cursor:pointer;list-style:none;color:#688258;width:fit-content}.footer summary::-webkit-details-marker{display:none}.footer summary:after{content:' +';padding-left:5px}.footer details[open] summary:after{content:' −'}.footer details p{max-width:570px;padding-top:9px}.skip{position:absolute;top:-100px;left:12px;background:var(--green);color:#fff;padding:12px;z-index:5}.skip:focus{top:8px}dialog{width:calc(100% - 32px);max-width:380px;border:1px solid var(--line);border-radius:18px;padding:30px;color:var(--ink);background:#fff;box-shadow:0 20px 100px #172e1c22}dialog::backdrop{background:#17241b70;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:8px;top:8px;border:0;background:none;color:#8d9b83;font-size:28px;width:40px;height:40px}dialog h2{font-size:24px;margin:0 0 18px}.dialog-game{font-size:17px;font-weight:600;margin:0}.dialog-english{font-size:12px;color:#97a18f;margin:6px 0 0}.credit-panel{display:flex;justify-content:space-between;align-items:center;background:#f0f5e9;border:1px solid #e1ead5;border-radius:9px;padding:14px 17px;margin:22px 0 14px}.credit-panel>span{font-size:13px;color:#849374}.credit-panel strong{font-size:27px;font-weight:600;color:#3b5c29;letter-spacing:-.5px}.dialog-note{font-size:12px;color:#8c9581;line-height:1.8}#service-status{font-size:12px;line-height:1.8;color:#748366}#service-status:empty{display:none}.dialog-start{width:100%}.dialog-start:disabled{background:#e8eddf;color:#96a08a}.retry{display:block;border:0;background:none;color:#657d50;font-size:12px;text-decoration:underline;margin:12px auto}.session-note{font-size:11px;color:#9ba38f;text-align:center;margin:16px 0 0}
@media(min-width:1500px){.intro{padding-top:60px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.game-cover{width:220px;flex-basis:220px}.header-right{gap:18px}}@media(max-width:600px){.wrap{width:calc(100% - 36px)}.header{height:78px}.brand{font-size:16px;gap:9px}.brand img{width:32px;height:32px}.header-note{display:none}.language{gap:5px;padding:8px}.language select{font-size:12px;max-width:88px}.intro{padding:30px 0 22px;align-items:center}.intro h1{font-size:26px}.eyebrow{font-size:8px;letter-spacing:1.3px}.demo-note{font-size:10px;gap:5px}.game-cover{width:196px;flex:0 0 auto}.site-footer{margin-top:34px}.footer{padding:24px 0}.footer-top{gap:12px}.footer-top p{font-size:10px}.footer-brand{font-size:11px}.footer-bottom{font-size:10px;gap:18px;flex-direction:column}.footer-bottom>span{font-size:10px}dialog{padding:28px 24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
/* A fixed card size rhythm remains consistent as the catalogue grows. */
body{min-height:100svh;display:flex;flex-direction:column}.wrap{margin:0 auto}main.wrap{flex:1;padding-bottom:56px}.site-footer{margin-top:0}.game-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px 22px;align-content:start}.game-card{min-width:0}.game-grid .game-cover{display:block;width:100%;aspect-ratio:263/346;border-radius:12px;box-shadow:0 7px 18px #304d2810}.game-name{font-size:15px;line-height:1.5;font-weight:600;margin:12px 0 4px;overflow-wrap:anywhere}.game-subtitle{font-size:11px;color:#8c9983;line-height:1.6;margin:0;overflow-wrap:anywhere}
@media(max-width:960px){.game-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 18px}}@media(max-width:700px){.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px}.game-name{font-size:14px}}@media(max-width:480px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-name{font-size:13px}.game-subtitle{font-size:10px}main.wrap{padding-bottom:34px}}
