:root{font-family:Arial,Helvetica,sans-serif;color:#c7beb0;background:#000;font-synthesis:none;color-scheme:dark;font-weight:400;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:1px solid #d5b98a;outline-offset:5px}button{border:0;background:none}button:disabled{cursor:wait}button:hover{color:#f1e3c9}a{color:#a99b84;text-underline-offset:4px}a:hover{color:#e4cfac}::selection{background:#746044;color:#fff}h1,p{margin:0}.experience,.scene-interaction,.loading-screen,.error-screen{position:fixed;inset:0}.experience{overflow:hidden;background:#000}.scene-interaction{touch-action:manipulation;-webkit-user-select:none;user-select:none}.chess-canvas{width:100%;height:100%}.loading-screen,.error-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#000;z-index:5}.loading-mark{font-family:Georgia,serif;font-size:52px;color:#b5a17e;line-height:1;margin-bottom:28px}.loading-screen p{font-size:10px;letter-spacing:.34em;color:#ad9f89}.loading-screen small{color:#777067;font-size:11px;margin-top:22px;letter-spacing:.05em}.loading-line{height:1px;width:100px;background:#302a22;overflow:hidden;position:relative;margin-top:24px}.loading-line:after{content:"";position:absolute;width:35%;height:100%;background:#b5a17e;animation:loading 1.7s ease-in-out infinite}@keyframes loading{0%{left:-35%}to{left:100%}}.settings-toggle{position:fixed;bottom:max(28px,env(safe-area-inset-bottom));right:max(30px,env(safe-area-inset-right));width:44px;height:44px;border:1px solid #ffffff17;border-radius:50%;display:grid;place-items:center;color:#a99a83;background:#0008;z-index:12;transition:border-color .25s,color .25s}.settings-toggle:hover{border-color:#bfa77f70}.intro-caption{position:fixed;left:38px;bottom:38px;pointer-events:none;animation:caption 8.5s ease both}.intro-caption p{font-family:Georgia,serif;font-size:15px;letter-spacing:.25em;color:#b6a384}.intro-caption p span{font-family:Arial,sans-serif;font-size:9px;letter-spacing:.3em;color:#817568;margin-left:7px}.intro-caption small{display:block;margin-top:13px;font-size:10px;color:#8c8274;letter-spacing:.05em}.intro-caption b{padding:0 7px;font-weight:400}@keyframes caption{0%{opacity:0;transform:translateY(6px)}12%,75%{opacity:1;transform:translateY(0)}to{opacity:0}}.pause-indicator{position:fixed;bottom:43px;left:50%;transform:translate(-50%);font-size:9px;letter-spacing:.22em;color:#9a8b75;white-space:nowrap;pointer-events:none}.pause-indicator span{margin-right:10px;font-size:12px}.settings-panel{position:fixed;right:30px;bottom:87px;width:330px;max-height:calc(100dvh - 115px);overflow:auto;padding:27px;background:linear-gradient(145deg,#15130ff5,#0b0b0af9);border:1px solid #bba47e26;border-radius:5px;box-shadow:0 18px 80px #0009;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:11;animation:panel-in .22s ease}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.panel-heading h1{font: 28px Georgia,serif;color:#d4c3a7;letter-spacing:-.03em}.icon-button{font-size:23px;font-weight:200;color:#8a7e6b;padding:0 2px}.panel-eyebrow{font-size:8px;letter-spacing:.22em;color:#9b8c73;line-height:1.6}.settings-panel fieldset{border:0;padding:0;margin:29px 0 25px}.settings-panel legend{font-size:11px;color:#a9a092;margin-bottom:11px}.segmented{display:flex;padding:3px;border:1px solid #c1aa8420;border-radius:4px;gap:3px}.segmented button{flex:1;padding:10px 6px;border-radius:2px;font-size:11px;color:#a2988a}.segmented button[aria-pressed=true]{background:#b59a6b1c;color:#dcc5a0}.segmented kbd{margin-left:12px;font-size:8px;border:1px solid #bba07530;padding:2px 4px;border-radius:2px;color:#a59273}.game-information{border-top:1px solid #ffffff0c;border-bottom:1px solid #ffffff0c;padding:21px 0;margin-bottom:15px}.game-information>.panel-eyebrow{margin-bottom:16px}.player{display:flex;align-items:center;gap:11px;font: 15px/1.7 Georgia,serif;color:#cfc5b4}.player i{display:block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.white-disc{background:#cfbc98}.black-disc{background:#5d3b25;border:1px solid #967045}.game-event{font-size:10px;color:#978b79;line-height:1.8;margin:12px 0 16px}.game-progress{height:1px;background:#bda47f18}.game-progress span{display:block;height:100%;background:#aa9269;transition:width .5s}.playback-actions{display:flex;flex-direction:column}.playback-actions button{display:flex;justify-content:space-between;padding:10px 0;font-size:11px;text-align:left}.playback-actions kbd{font:9px Arial,sans-serif;color:#8e826f}.interaction-help{font-size:10px;line-height:1.8;color:#8f8372;margin-top:17px}.credits{font-size:9px;line-height:1.8;color:#8a7f6e;border-top:1px solid #ffffff0c;padding-top:18px;margin-top:22px}.credits a{display:inline-block;margin-top:5px}.move-panel{position:fixed;right:31px;top:50%;transform:translateY(-50%);width:214px;max-height:56dvh;padding:22px 18px 15px;background:linear-gradient(135deg,#12110ee8,#070706d9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid #bba47f1a;border-radius:4px;display:flex;flex-direction:column;z-index:3}.move-panel .panel-eyebrow{margin-bottom:18px}.move-columns,.move-row{display:grid;grid-template-columns:30px 1fr 1fr;gap:4px}.move-columns{font-size:8px;letter-spacing:.06em;color:#998b75;margin-bottom:10px}.move-scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#71604840 transparent;min-height:45px;padding-right:4px}.move-row{font-family:Georgia,serif;font-variant-numeric:tabular-nums;font-size:14px;line-height:2.1;color:#b9b09f}.move-row>span:last-child{color:#a18e75}.move-row .move-number{font:10px/2.9 Arial,sans-serif;color:#8d806e}.move-row span.current-move{color:#e9cf9c;background:#bda27315;border-radius:3px;padding-left:5px;margin-left:-5px}.move-count{font-size:8px;color:#91816b;letter-spacing:.1em;margin-top:15px;border-top:1px solid #ffffff0c;padding-top:12px}.empty-moves{font-size:11px;color:#8c8070}.error-screen{padding:30px;gap:20px}.error-screen h1{font: 30px Georgia,serif;color:#d7c4a5}.error-screen p{font-size:13px;line-height:1.8;color:#a49782}.error-screen button{border:1px solid #b69c6e50;padding:12px 24px;border-radius:3px;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fallback-message{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:30px;color:#c4b293}@keyframes panel-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:700px){.settings-toggle{bottom:max(18px,env(safe-area-inset-bottom));right:18px}.settings-panel{right:18px;bottom:75px;width:min(330px,calc(100vw - 36px));max-height:calc(100dvh - 98px);padding:23px}.intro-caption{left:22px;bottom:28px}.intro-caption p{font-size:12px}.intro-caption small{max-width:240px;line-height:1.8;font-size:9px}.pause-indicator{bottom:91px;font-size:8px}.move-panel{right:14px;top:20px;transform:none;width:158px;max-height:27dvh;padding:12px}.move-panel .panel-eyebrow{font-size:7px;margin-bottom:8px}.move-columns{font-size:7px;margin-bottom:5px}.move-row{font-size:12px;line-height:1.8}.move-number{line-height:2.2!important}.move-count{margin-top:8px;padding-top:8px;font-size:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.intro-caption{opacity:1}}
