/* Shared outer-game controls. ID scopes keep host lobby themes from recolouring them. */
#game-overlay .game-frame-host{position:absolute;inset:0;min-height:0}
#game-overlay .game-notice{position:absolute;z-index:2147483001;top:70px;left:10px;right:10px;pointer-events:none}
.rr-game-host{position:relative;overflow:hidden;background:#000;isolation:isolate}
.rr-game-surface{position:absolute;left:50%;top:50%;transform-origin:center;isolation:isolate;background:transparent;pointer-events:none}
.rr-game-host>iframe{display:block;border:0;position:absolute;left:50%;top:50%;transform-origin:center}
.rr-game-safe-area{position:absolute;visibility:hidden;pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
#floating-game-back{box-sizing:border-box;pointer-events:auto;position:absolute;z-index:2147483000;display:grid;place-items:center;width:52px;height:52px;min-width:52px;min-height:52px;margin:0;padding:0;gap:0;border:1px solid #86bca0;border-bottom-color:#1a4b3b;border-radius:17px;background:linear-gradient(160deg,#609f82 0%,#3d7b62 42%,#285e49 45%,#346e55 100%);color:#fff0c9;box-shadow:inset 0 2px 0 #d2f1d580,inset 0 -2px 0 #194e3c99,0 5px 0 #173f32,0 8px 14px #071c1d66;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;isolation:isolate;transition:filter .15s,box-shadow .15s}
#floating-game-back::before{content:"";position:absolute;inset:3px 5px auto;height:15px;border-radius:12px 12px 8px 8px;background:linear-gradient(#d7f9dd3d,#d7f9dd00);pointer-events:none}
#floating-game-back:hover{background:linear-gradient(160deg,#71af91 0%,#47896e 42%,#306b54 45%,#3c7b60 100%);color:#fff6d8;border-color:#a0cfb1;border-bottom-color:#23543f}
#floating-game-back:focus-visible{outline:2px solid #ffe0a0;outline-offset:4px;border-radius:17px;box-shadow:inset 0 2px 0 #d2f1d580,inset 0 -2px 0 #194e3c99,0 5px 0 #173f32,0 0 0 7px #193d3259,0 8px 14px #071c1d66}
#floating-game-back:active,#floating-game-back.is-dragging{background:linear-gradient(160deg,#4c896e,#2d654e 55%,#326d53);border-color:#8cbea0;color:#fff0c9;box-shadow:inset 0 2px 0 #d2f1d559,inset 0 -2px 0 #194e3c99,0 3px 0 #173f32,0 6px 11px #071c1d66}
#floating-game-back.is-dragging{cursor:grabbing}
#floating-game-back .rr-game-return-arrow{display:block;flex:none;width:32px;height:32px;margin:0;pointer-events:none;background:linear-gradient(#fff9df,#f3d493);filter:drop-shadow(0 2px 0 #795621) drop-shadow(0 -1px 0 #fff7dd80);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M14 5 3 15l11 10v-7h7c4 0 6.5 2 8 5 .5-8-2.5-13-9-13h-6V5Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M14 5 3 15l11 10v-7h7c4 0 6.5 2 8 5 .5-8-2.5-13-9-13h-6V5Z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .15s}
#floating-game-back:active .rr-game-return-arrow{transform:translateY(1px)}
#game-exit-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;padding:26px 20px 22px;max-width:none;border:1px solid #fffdf2;border-radius:26px;background:linear-gradient(155deg,#fffdf7,#f3f3e9);color:#263e32;box-shadow:0 24px 70px #071e2466,0 4px 14px #0b29282e,inset 0 1px 0 #fff;font:16px/1.55 system-ui,sans-serif;overflow:auto;overscroll-behavior:contain;text-align:center;isolation:isolate}
#game-exit-dialog::backdrop{background:#0a23255c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#game-exit-dialog .rr-game-exit-badge{display:none} /* Hide the badge if an older cached controller is still active. */
#game-exit-dialog h2{margin:0 0 10px;padding:0;color:#294634;font:700 22px/1.35 system-ui,sans-serif;letter-spacing:-.02em;overflow-wrap:anywhere}
#game-exit-dialog p{margin:0 0 22px;padding:0;color:#6b786d;font:400 14px/1.7 system-ui,sans-serif;overflow-wrap:anywhere}
#game-exit-dialog .rr-game-exit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0}
#game-exit-dialog .rr-game-exit-actions button{box-sizing:border-box;display:block;width:100%;min-width:0;min-height:48px;margin:0;padding:12px 10px;border:1px solid transparent;border-radius:14px;font:650 15px/1.4 system-ui,sans-serif;white-space:normal;overflow-wrap:anywhere;text-align:center;cursor:pointer;transition:filter .15s,box-shadow .15s}
#game-exit-dialog .rr-game-exit-actions .rr-game-continue{border-color:#7daa8b;border-bottom-color:#2b5940;background:linear-gradient(#609c77,#427956 52%,#39704e);color:#fffbed;text-shadow:0 1px 1px #234b32;box-shadow:inset 0 1px 0 #d0edbd80,0 3px 0 #244b34,0 5px 8px #274b3026}
#game-exit-dialog .rr-game-exit-actions .rr-game-continue:hover{background:linear-gradient(#6aa680,#4b845f 52%,#417a56);color:#fffbed;border-color:#8cba99;border-bottom-color:#2b5940}
#game-exit-dialog .rr-game-exit-actions .rr-game-leave{border-color:#cb8f84;border-bottom-color:#894a40;background:linear-gradient(#bb796b,#a75f53 52%,#9a554a);color:#fff8f2;text-shadow:0 1px 1px #783e35;box-shadow:inset 0 1px 0 #f6c2b480,0 3px 0 #753f36,0 5px 8px #753f3626}
#game-exit-dialog .rr-game-exit-actions .rr-game-leave:hover{border-color:#d69d91;border-bottom-color:#894a40;background:linear-gradient(#c58475,#b36b5e 52%,#a85e51);color:#fff8f2}
#game-exit-dialog .rr-game-exit-actions button:focus-visible{outline:2px solid #426f52;outline-offset:3px;border-radius:14px}
#game-exit-dialog .rr-game-exit-actions button:active{filter:brightness(.95)}
@media(prefers-reduced-motion:reduce){#floating-game-back,#floating-game-back .rr-game-return-arrow,#game-exit-dialog .rr-game-exit-actions button{transition:none}}
@media(forced-colors:active){#floating-game-back,#floating-game-back:hover,#floating-game-back:active,#floating-game-back.is-dragging,#game-exit-dialog .rr-game-exit-actions button{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}#floating-game-back:focus-visible,#game-exit-dialog .rr-game-exit-actions button:focus-visible{outline-color:Highlight}#floating-game-back .rr-game-return-arrow{background:ButtonText;filter:none;forced-color-adjust:none}}
