body.game-viewing-image{overflow:hidden}
.game-image-viewer{color-scheme:light;width:min(1200px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:20px;border:1px solid #b7cdbf;border-radius:16px;background:#fffef9;color:#203a36;box-shadow:0 24px 80px #18332d44;overflow:auto}
.game-image-viewer::backdrop{background:#18332dba}
.game-image-viewer header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.game-image-viewer h2{font-size:20px;margin:0;color:#203a36}
.game-image-viewer header p,.game-image-status{font-size:13px;color:#51675e;line-height:1.8;margin:6px 0}
.game-image-viewer .btn{background:#fffef9;color:#203a36;border:1px solid #b7cdbf;border-radius:9px;min-width:44px;min-height:44px;font-size:13px;padding:8px 12px;box-shadow:none}
.game-image-viewer .btn:focus-visible,.game-image-viewport:focus-visible{outline:3px solid #17755b;outline-offset:2px}
.game-image-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 8px}
.game-image-tools output{font-size:13px;min-width:48px;text-align:center;font-variant-numeric:tabular-nums}
.game-image-viewport{height:min(62dvh,720px);min-height:180px;overflow:auto;overscroll-behavior:contain;border:1px solid #d6e1d8;border-radius:10px;background:#eef2e9;touch-action:pan-x pan-y pinch-zoom}
.game-image-viewport img{display:block;max-width:none;max-height:none;height:auto;background:#fff;object-fit:initial;margin:0}
.student-app .game-question-text{font-size:17px;line-height:1.9;color:var(--campus-ink,#203a36);white-space:pre-wrap;overflow-wrap:anywhere}
.game-original{margin:12px 0 18px;padding:12px 14px;border:1px solid var(--campus-line,#d6e1d8);border-radius:12px;background:#f5f8ef}
.game-original summary{font-size:13px;color:#345a46;cursor:pointer;font-weight:650}
.game-image-open{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;margin-top:10px;color:#315a46}
.game-image-open .game-question-image{margin:0 0 7px;border-color:#d6e1d8}
.game-image-open>span{display:inline-flex;align-items:center;min-height:40px;line-height:1.5;font-size:13px;font-weight:650}
.game-image-error{color:#a53c34;font-size:13px;line-height:1.8;margin-top:8px}
.game-image-open.failed img{display:none}
.game-original .game-image-open.failed>span{min-height:44px}
@media(max-width:720px){.game-image-viewer{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);padding:14px;border-radius:12px}.game-image-viewer header{gap:10px}.game-image-viewer h2{font-size:18px}.game-image-viewer header p{font-size:12px}.game-image-tools{gap:6px}.game-image-viewer .btn{padding:8px 10px;font-size:12px}.game-image-viewport{height:60dvh}.student-app .game-question-text{font-size:16px}.game-original{padding:11px 12px}}
