.qr_page{min-height:80vh;flex-direction:column;padding:0 1.25rem 3rem;max-width:544px;margin:0 auto}.qr_header,.qr_page{display:flex;align-items:center}.qr_header{width:100%;justify-content:space-between;padding:1.25rem 0 1.75rem;gap:1rem}.qr_exit{color:var(--subtle-cyan-text-color);font-size:.88rem;white-space:nowrap;opacity:.8}.qr_exit:hover{opacity:1}.qr_genre_select{background:var(--secondary-background-color);border:none;border-radius:8px;color:var(--text-color);font-family:inherit;font-size:.85rem;padding:.4rem .7rem;cursor:pointer;max-width:160px}.qr_session_count{font-size:.82rem;opacity:.55;white-space:nowrap;text-align:right;min-width:80px}.qr_card{width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem;animation:qr_fadein .2s ease}@keyframes qr_fadein{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.qr_cover{width:180px;height:240px;-o-object-fit:cover;object-fit:cover;border-radius:4px;box-shadow:0 0 28px 6px var(--box-shadow-color);display:block}.qr_game_info{text-align:center}.qr_game_title{font-size:1.25rem;font-weight:700;color:var(--subtle-cyan-secondary-text-color);display:block;margin-bottom:.3rem;line-height:1.3}.qr_game_title:hover{color:var(--text-color)}.qr_game_meta{font-size:.8rem;opacity:.5;margin:0}.qr_prompt{font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;font-weight:600;opacity:.55;margin:.25rem 0 0}.qr_buttons{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.qr_btn{width:44px;height:44px;border:none;border-radius:7px;background:var(--secondary-background-color);color:var(--secondary-text-color);font-family:inherit;font-size:1.05rem;font-weight:700;cursor:pointer;transition:background .1s,transform .08s,color .1s}.qr_btn:hover{background:var(--subtle-cyan-text-color);color:#000;transform:scale(1.1)}.qr_btn:active{transform:scale(.94)}.qr_confirming{font-size:1.6rem;font-weight:700;color:var(--subtle-cyan-text-color);padding:1.25rem 0;text-align:center;animation:qr_fadein .15s ease}.qr_skip{background:transparent;border:none;color:var(--text-color);font-family:inherit;font-size:.85rem;cursor:pointer;opacity:.4;padding:.2rem .4rem;transition:opacity .12s}.qr_skip:hover{opacity:.8}.qr_login_note{font-size:.8rem;opacity:.5;text-align:center;margin:0}.qr_login_note a{color:var(--subtle-cyan-text-color)}.qr_state_msg{margin-top:4rem;text-align:center;opacity:.75;display:flex;flex-direction:column;align-items:center;gap:.75rem}.qr_done_title{font-size:1.2rem;font-weight:700;margin:0}.qr_done_sub{font-size:.9rem;opacity:.7;max-width:300px;margin:0}.qr_done_count{font-size:.85rem;opacity:.55;margin:0}.qr_done_actions{display:flex;gap:.75rem;margin-top:.5rem;flex-wrap:wrap;justify-content:center}.qr_done_btn{padding:.5rem 1.25rem;border-radius:999px;background:var(--tertiary-background-color);color:var(--subtle-cyan-text-color);font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;border:none;text-decoration:none;display:inline-block;transition:opacity .12s}.qr_done_btn:hover{opacity:.8}.qr_done_btn_secondary{background:transparent;border:1px solid var(--subtle-cyan-text-color)}.qr_retry_btn{padding:.45rem 1.2rem;border-radius:8px;background:var(--tertiary-background-color);color:var(--text-color);font-family:inherit;font-size:.9rem;cursor:pointer;border:none}.qr_modal_overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:500;justify-content:center;padding:1rem;animation:qr_fadein .2s ease}.qr_modal,.qr_modal_overlay{display:flex;align-items:center}.qr_modal{background:var(--secondary-background-color);border-radius:12px;padding:2rem 1.75rem 1.5rem;max-width:400px;width:100%;flex-direction:column;gap:1rem;box-shadow:0 8px 40px rgba(0,0,0,.5)}.qr_modal_title{font-size:1.3rem;font-weight:700;margin:0;text-align:center;color:var(--subtle-cyan-secondary-text-color)}.qr_modal_body{font-size:.9rem;opacity:.75;text-align:center;margin:0;line-height:1.55}.qr_modal_share{justify-content:center}.qr_modal_close{margin-top:.25rem;padding:.55rem 1.75rem;border-radius:999px;background:var(--subtle-cyan-text-color);color:#000;font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;border:none;transition:opacity .12s}.qr_modal_close:hover{opacity:.85}